PHP笔记10-day14
来源:互联网 发布:android js框架 编辑:程序博客网 时间:2024/05/31 13:14
继承:
基本概念
从一个现有的类A中,获取其中的特征信息,以构建另一个类B,这种现象就是继承。
基本语法:
class A{}
class B extends A { } //单继承;
如果是多继承,代码类似这样(其实php是不支持的):
class s B extends A1, A2, A3,..... {}
几个基本概念
继承:B继承了A;
派生:A派生出B;
父类:基类,上级类,
子类:派生类,下级类,
单继承:就是一个类只能从另一个类继承特性的现象;
多继承:就是一个类能够从多个类继承特性的现象;
扩展:子类在继承父类的特征信息的基础上,再定义一些自己的特征信息。
访问控制修饰符:
有3个访问控制修饰符,用于修饰属性或方法:public, protected, private
有3个访问位置:类内部,继承关系类的内部;类外部;
总结:
parent关键词:
代表父类。
常常在构造方法中使用,以代表父类来执行父类的方法(此时可能执行的是父类的静态方法或实例方法)
构造方法和析构方法调用上级同类方法的问题
1:他们都有这个特性:子类没有,则自动会调用父类,子类有,则不会自动调用父类;
2:子类中,可以人为调用父类的同类方法;
覆盖(override):
基本概念:
子类定义跟父类的同名属性或方法;
重写的基本要求:
1,子类中重写的属性或方法,其访问修饰符范围不能更小(狭窄);
2,子类中重写的方法,形参必须跟父类保持一致;
说明:
1,构造方法中的形参不受限制;
2,父类的私有成员其实是不能重写;
最终类:
就是一个不允许进行派生的类——即别的类不能以它作为父类;
final class 类名{。。。}
最终方法:
就是一个定义好了之后不允许后代类去覆盖的方法;
什么叫设计模式?
其实就是针对某种问题所提出的(人们积累的)相应的解决方法的一般性经验总结。
工厂模式:
就是定义的一个类,它能够根据传递过来的类的名称,而“生产”这种类的对象。
class Factory{
Static function GetObject( $类名 ){
return new $类名()
}
}
单例模式:
就是定义这样一个类:它只能实例化自己的一个对象。
实现单例需要如下几步:
class Single{
//第1步:私有化构造方法:
private function __construct(){} //保证外界不可以使用new来创建对象了
//第2步:定义一个私有的静态属性,目标是为了存储该唯一对象,但其初始值为null
private static $instance = null;
//第3步:定义一个静态方法,从中判断是否生成该唯一对象,并返回该唯一对象;
static function GetInstance(){
if( !isset( self::$instance ) ){
self:: $instance = new self();
}
return self::$instance;
}
}
封装性:
就是将一个类中的成员,设计为“尽量少地”对外开放其访问权限的一种指导原则;
- PHP笔记10-day14
- day14-笔记
- day14笔记
- day14笔记
- C++学习笔记 day14
- [Java视频笔记]day14
- day14笔记-api
- JAVA视频笔记(day14)
- 传智播客-Java学习笔记day14
- JavaScript-day14-个人学习笔记
- day14
- DAY14
- day14
- day14
- day14
- day14
- day14
- day14
- C++11中的std::bind
- 项目:程序填空
- 大数据实战:用户流量分析系统
- evaluate-reverse-polish-notation
- java多线程常见面试题
- PHP笔记10-day14
- Linux 备忘录
- 如何设计一个 iOS 控件?(iOS 控件完全解析)
- .net 4.0 之后的协变与逆变
- 在扑克牌游戏中,每次游戏开始都要求把54张牌重新排列一下,称为洗牌。试编写程序将一副扑克牌(用54个整数1~54表示)随机洗好后,顺序输出54张牌的情况。
- JavaAPI之CopyOnWriteArrayList
- C++解压zip文件
- solr 4.7.2 环境搭建(比较齐全的参考)
- 各种数据库连接字符串