zoukankan      html  css  js  c++  java
  • 6.5 继承

    类的继承
    子(派生类)继承父(基类) 关键字 :extends
    语法:class zi extends fu{}
    访问权限三个修饰符
    public: 公共的,可以在任何地方定义(就是 var 的作用)
    protected: 受保护的,只能在当前类或者当前类的上下级有继承关系的类访问,别的类访问不了
    private: 私有的,只能在其所在类访问,别的类访问不了
    基本概念:
    继承 :一个类从另一个类获得他的属性和方法,称为继承。
    派生 :从一个已经有的类产生一个新的类,称为派生。
    拓展 :在子类中再来定义自己的一些新的特有的属性和方法,没有扩展,也就没了继承的意义。
    单继承:一个类只能继承一个上级的特性和信息。

    parent代表父类
    对比:self代表当前类(自己所在的当前类)
    parent 通常用于子类中调用父类的成员,多数就是使用父级的静态类成员,因为parent代表的是类,并非对象

    构造方法析构方法在继承中的表现:
    子类中没有定义析构方法时,会自动调用父类的析构方法,如果子类定义了自己的析构方法,就不会调用父类的析构方法,如果想调用可以手动添加,perent::__destruct()。

    最终类跟最终方法:
    一个类或者一个方法,不想被别人当做父级拿来拓展或者方法不希望被下级覆盖,可以在类或者方法前面写关键字:final
    例:最终类:final class 方法名{}; 最终方法:final function 方法名(){}

    重写(override)
    重写又叫覆盖,就是将从父类继承下来的属性或方法重新写成适合自己的,但是要覆盖的属性名、方法名、参数要一样。

    设计模式:设计模式分为工厂模式和单例模式,是解决一些问题的常规做法,比较好的一种经验总结,面对不同的问题,可能会有不同的解决办法,此时可以称为不同的设计模式

    抽象类和抽象方法 关键字 abstract
    概念:在正常类或者方法前面加上关键字 abstract 就构成了抽象类或者抽象方法,抽象类不一定有抽象方法,但是有抽象方法一定是抽象类,
    抽象方法:抽象方法只有定义,没有方法体,小括号里写参数,括号外一定有分号,并且没有大括号{}。
    语法:abstract function a($x1, $y, $m);

  • 相关阅读:
    ios swift模仿qq登陆界面,xml布局
    类和结构体的区别
    获取或者设置时,无后缀和A后缀和W后缀的区别
    mfc控件学习
    MFC之简单计算器
    双冒号、点操作、箭头的区别
    MFC使用MsComm做串口通信
    保存结构体到本地(二进制)
    文件管理函数
    文件定位的几个函数
  • 原文地址:https://www.cnblogs.com/cp123/p/9143255.html
Copyright © 2011-2022 走看看