class a{
public function b(){
echo 'c';
}
}
$d = new a();
$d -> b();
创建类的时候执行的方法。
public function __construct([$a, ...])
类的参数的含义可以通过注释来说明,数据类型也可以在这里定义:
/**
* @param $a
* @param $b
*/
/**
* @param $a 关于a的说明
* @param $b 关于b的说明
*/
/**
* @param int $a
* @param string $b
*/
类的属性可以通过$this -> a
形式来定义。
需要通过实例进行访问。
public function a(){}
private function a(){}
不需要依赖实例访问,可以使用 类名::方法()
这样的形式访问。
public static function a(){}
private static function a(){}
可以使用 类名::$B()
这样的形式访问。
public static $B
private static $B
可以使用 类名::C()
这样的形式访问。前面不用加 public
/ private
,可被外部访问。
const C
继承 b
类的 a
类:
class b extends a{}
父类的 m
方法:
parent::m($a)
目的是为了产生唯一的对象。
首先,对象不直接构造,构造函数私有,使用静态方法进行间接构造。
class A{
private function __construct(){
...
}
static function makeA(){
return new self();
}
}
new A(); //报错
A::makeA(); //可以运行
然后,私有属性:
class A{
private static $a = null;
private function __construct(){
...
}
static function makeA(){
if(self::$a == null){
self::$a = new self();
}
return self::$a;
}
}
A::makeA();