php开发中类的继承与设计模式

更新时间:2019-10-20 15:14:02 来源:青锋建站 作者:青锋建站
  PHP面向对象的设计理念包括继承、多态、封装,其中继承是实现代码重用的重点方法,通过在父类中声明相关的属性和方法,可以在子类中使用。PHP类的继承提高开发效率,更适合开发大型项目,所以目前主流的PHP框架和CMS都是采用了面向对象的设计模式。青锋建站-专业网站建设开发,SEO,网络营销,CMS建站开发,软件开发。

1、PHP类的继承

PHP和大多数面向对象的语言都是单继承模式,而C++是多继承。
单继承:class B extends A{}
多继承:class C extends A1,A2,A3()

2、php继承的访问控制

Public 表示修饰的属性和方法“谁都可以访问”;var是public的同义词。
Protected 表示修饰的属性和方法“只能自己家族内可以访问”;
Private  表示修饰的属性和方法“只能自己可以访问”;

3、PHP中的构造方法和析构方法的继承

构造方法和析构方法在继承中的表现:
  1. 如果子类没有,就会自动调用你类的。
  2. 如果子类有,就不会自动调用父类的。
2.1但我们可以在子类的方法中,去人为的调用父类的同名方法,形式为:parent:对应父类方法()
Parent::代表父类。
如何调用父类的父类的构造方法?

4、parent关键字

基本含义:
它代表某个类的“父类”--注意:它代表“类”。
但是在实际应用中,根据调用的场景,它其实常常也看起来是代表“父类对象”。
Parent关键字常常用在子类中,以在子类中访问父类的方法或属性。
继承关系的一句话:子类对象也是父类对象,即鱼是动物;
使用形式:
Parent::调用父类的属性或方法,由于parent::可以访问父类的实例方法,因此parent可以代表父的对象,同时也代表子类对象,因为子类对象也是父类对象。其中parent可以换成父类的类名,但是这种方法不常用。
Parent::showinfo()
中的parent::$P1中的parent::代表父类。

5、重写override

基本概念:重写其实就是子类重新定义父类继承给自己的属性或方法。
其基本特征是:父类已经有的属性或方法,子类用同样的名字再定义一次。
重写的基本要求:
  1. 子类重写上级类的成员时,“访问控制修饰符”不能权限更低。比如:
父类:public,子类只能是public
父类:protected,子类:protected或public
父类:private,子类无法覆盖或者说已经继承了,但无法使用。
方法的重写:
要求方法的形参必须跟父类的一致;

6、PHP最终类、最终函数

最终类:
就是一个类,预先定义好,不允许其他的类继承它;即它是继承链条中的最后一条,没有后代。
目的:最终类用于该类的设计者认为,为了完成目标工作,自己做作的属性和方法已经足够了,而无需再去扩展。
最终方法:
预先定义好一个方法,不允许下级类来“覆盖”它,即认为已经足够完美,无需继承。
最终类和最终方法出于一种管理上的技术解决方法,不让其他开发者继承自己的类或方法。

7、PHP类的设计模式

什么是设计模式?
是面积对象程序设计中的“常见任务模式”中的代码模式的经验总结。它不是面向对象的语法或概念
单例模式
在实际应用中,有的类只需求new出“一个对象”,就足以完成该类的设计目标;
如果设计一个类,让该类“只能得到一个对象”,此时这个类,就称为“单例类”,其new出来的对象,就称为单例对象。
怎么实现单例类?
工厂模式:
所谓工厂模式,其实就是设计这样一个类(工厂类F),该类可以接收一个“参数”,该参数代表某个类名(比如B),然后,这个类F就可以“生产”出所传过来的这个类名(B)对应的对象。
  以上就是青锋建站给大家分享的PHP类的继承和两种设计模式,PHP是最好的网站开发语言,在网站开发领域拥有得天独厚的优势。青锋建站,提供专业的高品质网站制作服务,包括网站建设,SEO,网络营销,PHP开发,网站建设知名品牌,全国接单,为企业构建强有力的营销平台。

转载请注明来源网址:青锋建站-http://www.sjzphp.com/webdis/php_extends_839.html

电话 15632335515 | 邮箱 943703539@qq.com | QQ 943703539 | 微信 qingfengjianzhan

Copyright © 2016-2026 青锋建站 版权所有