name=$name;
$this->sex=$sex;
}
protected function chew($food){
echo "{$food}已经被咀嚼完成!
";
}
//抽象方法
abstract public function eat($food);
static public function hello(){
echo '您好!我是来自'.self::BIRTHPLACE.'的人类
';
}
}
class Student extends Humanity {
const BIRTHPLACE='火星';
private $hh=666;
public $studentId;
public function __set($name,$value){
$this->$name=$value;
}
public function __get($name){
return ($this->$name)*666;
}
public function test($subject){
echo "{$this->name}正在考{$subject}!
";
}
public function eat($food){
$this->chew($food);
echo "{$this->name}正在快速的吃{$food}!
";
}
}
$hanMM=new Student('韩梅梅','女');
echo $hanMM->hh;
解析:
核心在于,私有性的《《《属性》》》调用时才能执行__set和__get方法。
怎么执行呢?
调用私有性的属性即可,但是切记调用时不能赋值哦
name=$name;
$this->sex=$sex;
}
protected function chew($food){
echo "{$food}已经被咀嚼完成!
";
}
//抽象方法
abstract public function eat($food);
static public function hello(){
echo '您好!我是来自'.self::BIRTHPLACE.'的人类
';
}
}
class Student extends Humanity {
const BIRTHPLACE='火星';
private $hh=666;
public $studentId;
public function __call($funcName,$agrs){
echo "__call方法";
}
private function test($subject){
echo "{$this->name}正在考{$subject}!
";
}
public function eat($food){
$this->chew($food);
echo "{$this->name}正在快速的吃{$food}!
";
}
}
$hanMM=new Student('韩梅梅','女');
echo $hanMM->test();
解析:
调用私有性的方法时才自动执行的哦



