子类继承父类,可以调用非private的函数
静态static可以不实例化直接调用使用::,非静态则需要实例化之后使用->.
<?php
class computer{
public static $cpu='i7-7700k';
public $memory='16G';
private $disk=512;
public function game($game='游戏'){
if($this->getKey()<1024 ){
echo '不够';
return false;
}
else{
echo '够了';
return true;
}
}
public function job($work='写代码'){
echo ($this->game());
}
private function getKey(){
return $this->disk;
}
}
class mobile extends computer{
}
//实例
$computer = new computer();
$computer->game();
$mobile= new mobile();
echo $mobile::$cpu;
echo $mobile->memory;
?>
输出:
魔术方法 __call 这个方法用来监视一个对象中的其它方法。如果你试着调用一个对象中不存在或被权限控制中的方法,__call 方法将会被自动调用。
<?php
class Test{
public function __call($fun,$arg){
echo $fun.'<br/>';
print_r($arg);
}
}
$test=new Test();
$test->go('ok');
?>
输出: