浅谈PHP面向对象的继承
一、简介
?1、继承是从一个基类得到一个或多个类的机制,可以实现对类的复用
?2、子类将继承父类的属性和办法,同时可以扩展父类
二、怎样继承一个类
?1、PHP是单继承的,一个类只可以继承一个父类,但一个父类却可以被多个子类所继承。
?2、子类不克不及继承父类的私有属性和私有办法
?3、类的办法可以被继承,类的结构函数也能被继承
?4、继承的办法:使用extends关键字
//定义一个基类 class Book{ public $name; public $price; private $page; public function __construct($name){ $this->name = $name; } public function getName(){ return $this->name; } } //定义一个子类,并继承基类 class NoteBook extends Book{ } //实例化子类,并继承基类结构办法 $notebook = new NoteBook('book'); //子类继承的属性 echo $notebook->name;//结果为book //子类继承的属性 echo $notebook->getName();//结果为book //子类不克不及拜访基类的私有属性 echo $notebook->page; //错误
三、怎样继承一个类
?1、可以在类的属性和办法前面加上一个润饰符,来对类停止一些拜访上的操纵
?2、private : 不克不及直接被外部调取,只能在当前类的内部调取
?3、protected : 润饰的属性和办法只能被当前类内部或子类调取,外界没法调取
?4、public : 润饰的属性和办法,可以被无穷制地调取
四、重写
?1、假如从父类继承的办法不克不及知足子类的需求时,可以对其停止改写,这个历程叫办法的重写。
?2、子类中覆盖的办法,不克不及使用比父类被覆盖办法更严厉的拜访权限。
?3、父类的结构办法,也可以重写。
//定义一个子类,并继承基类 class NoteBook extends Book{ //覆写基类的办法 public function getName(){ return 'The book name is'.$this->name; } }
五、parent:: 关键字
?1、使用parent::来援用父类的办法,同时也可以用于调取父类中定义的成员办法。
public function getName(){ //调取父类的办法 return 'The book name is '.parent::getName(); }
引荐学习:PHP视频教程
以上就是浅谈PHP面向对象的继承的具体内容,更多请关注百分百源码网其它相关文章!