摘要:<?php class SportObject { public $name; public static $age = 28; private $weight; &n
<?php
class SportObject
{
public $name;
public static $age = 28;
private $weight;
protected $salary;
const SLOGAN = '锻炼造就完美身材';
public function __construct($name,$weight,$salary)
{
$this->name = $name;
$this->weight = $weight;
$this->salary = $salary;
}
public static function getAge()
{
return '年龄是:'.static::$age;
}
public function getWeight()
{
return '体重是:'.$this->weight;
}
public function getSalary()
{
return '工资是:'.$this->salary;
}
}
require 'public/Site.php';
class Basketball extends SportObject
{
public static $age = 30;
public function getSalary()
{
return parent::getSalary();
}
//重载
public function __call($name, $arguments)
{
return call_user_func_array([(new Site()),'show'],$arguments);
}
public static function __callStatic($name, $arguments)
{
return call_user_func_array(['Site','add'],$arguments);
}
}
$obj = new SportObject('John',30,5000);
echo $obj->name,'<br>';
echo $obj->getWeight(),'<br>';
echo $obj->getSalary(),'<br>';
echo SportObject::getAge(),'<br>';
echo SportObject::SLOGAN,'<br>';
$child = new Basketball('peter',45,8000);
echo $child->getAge(),'<br>';
echo $child->getSalary(),'<br>';
echo $child->show('php中文网','php的福利之地'),'<br>';
echo Basketball::add(4,6);总结:这几节课涉及了类声明与实例化,类属性和类常量的使用,类成员的访问限制和类的继承,后期绑定技术,重载技术等。对对象有了一个深刻的理解,类是对象的模板,对象是类的实例化。重载是通过魔术方法动态的创建类的属性和方法,可以在类外创建、访问属性和方法。重载技术扩展了类的功能。
批改老师:天蓬老师批改时间:2018-12-20 20:38:34
老师总结:不论多么的复杂, 类成员操作就是围绕着属性和方法展开, 操作无法就是读与写, 不要想得太复杂