搜尋

首頁  >  問答  >  主體

构造函数不可以私有化吗?

这个为什么会报错?

<?php
class A{  
public $a=2; 
 private function __construct(){      
$this->a=4;  }}
$obj =new A();
echo $obj->a;


phpcn_u700phpcn_u7002864 天前1358

全部回覆(2)我來回復

  • 数据分析师

    数据分析师2017-10-01 00:15:32

    建構子不可以私有化嗎? -PHP中文網路問答-建構子不可以私有化嗎? -PHP中文網問答

    圍觀一下哦,學習一下。

    回覆
    0
  • 巴扎黑

    巴扎黑2017-02-10 11:30:53

    构造函数私有化后,不能再使用 new 外部调用,私有方法只能类内部使用。

    可以这样:

    <?php
    class A {  
    public $a = 2;  
    private function __construct(){      
    $this->a=4;  }  
    public static function createInstance() {   
       return new A();  }}
    $obj = A::createInstance();


    回覆
    0
  • 取消回覆