用6中方法来创建对象
calss Demo1
{
//花括号推荐写在下面
public name='PHP中文网';
public function getName()
{
return $this->name;
}
public function getObj()
{
return new self();
}
public function getStatic()
{
return new static();
}
}
class Demo2 extends Demo1
{
public function getNewobj()
{
return new parent();
}
}
- 用
new 类名
来创建一个对象
$obj=new Demol();
//当没有参数时,后面的括号也是可以省略的
- 将类名放在一个字符串变量中
$className='Demo1';
$obj1=new $className();
- 用对象来创建对象,并且它创建的是一个新对象
$obj2=new $obj();
//通过这种方法创建的和$obj2=$obj是不同的
- 通过
self()
方法
$obj3=$obj->getObj();
- 通过
parent()
方法
$obj4=(new Demo2)->getNewobj();
- 通过
static()
方法
$obj5=(new Demo1)->getStatic();
//这里看起来和self()是一样的,但还是有区别的,要通过它们创建的子类才能看出来