小结
2016-06-09 15:51
211 查看
类和对象
对象:一切东西都可以看做对象,对象是类的实例化。
类:类是对象的抽象,用来描述众多对象共有的特征。
定义类 class
成员变量 和 成员方法
访问修饰符 public共有的 private 私有的 protected 受保护的
面向对象三大特性:
1.封装:目的:保护类,做法:成员私有,方法访问。__get() __set()
构造方法:特殊点:1.写法特殊 2.执行时间特殊;可以实现成员的初始化
$this关键字:$this代表该对象
2.继承:子类可以继承父类的一切
特点:单继承:一个子类只能有一个父类,一个父类可以派生多个子类。
方法重写:子类里建一个和父类重名的方法,会将父类方法覆盖;如果想扩展父类的方法而不是覆盖:parent::Say();
3.多态:当父类引用指向子类实例的时候,由于子类对父类的方法进行了重写,所以父类引用在调用该方法的时候表现出的不同就成为多态。
条件:1.必须继承 2.子类必须对父类方法重写 3.父类引用指向子类实例
静态
关键字:static
普通成员是属于对象的
静态成员是属于类的
普通方法里面可以调用静态成员
静态方法里面不能调用普通成员
用类名调用:Ren::Say();
self关键字:代表该类本身
抽象类
关键字:abstract
抽象类不能实例化,可以被继承
接口
关键字:interface,不加class关键字
接口里面有成员方法,但是没有函数体.
实现接口使用的关键字:implements 不是extends
子类必须实现接口的所有方法
析构函数
写法特殊 执行特殊:在对象销毁的时候执行
__tostring()方法
克隆 关键字:clone
加载类 7种
函数重载
要求:1.要么参数数量不同,要么参数类型不同。2.方法名必须相同
对象:一切东西都可以看做对象,对象是类的实例化。
类:类是对象的抽象,用来描述众多对象共有的特征。
定义类 class
成员变量 和 成员方法
访问修饰符 public共有的 private 私有的 protected 受保护的
面向对象三大特性:
1.封装:目的:保护类,做法:成员私有,方法访问。__get() __set()
构造方法:特殊点:1.写法特殊 2.执行时间特殊;可以实现成员的初始化
$this关键字:$this代表该对象
2.继承:子类可以继承父类的一切
特点:单继承:一个子类只能有一个父类,一个父类可以派生多个子类。
方法重写:子类里建一个和父类重名的方法,会将父类方法覆盖;如果想扩展父类的方法而不是覆盖:parent::Say();
3.多态:当父类引用指向子类实例的时候,由于子类对父类的方法进行了重写,所以父类引用在调用该方法的时候表现出的不同就成为多态。
条件:1.必须继承 2.子类必须对父类方法重写 3.父类引用指向子类实例
静态
关键字:static
普通成员是属于对象的
静态成员是属于类的
普通方法里面可以调用静态成员
静态方法里面不能调用普通成员
用类名调用:Ren::Say();
self关键字:代表该类本身
抽象类
关键字:abstract
抽象类不能实例化,可以被继承
接口
关键字:interface,不加class关键字
接口里面有成员方法,但是没有函数体.
实现接口使用的关键字:implements 不是extends
子类必须实现接口的所有方法
析构函数
写法特殊 执行特殊:在对象销毁的时候执行
__tostring()方法
克隆 关键字:clone
加载类 7种
函数重载
要求:1.要么参数数量不同,要么参数类型不同。2.方法名必须相同
相关文章推荐
- LVS几种模式简介
- Windows核心编程【1】相关资料
- leetcode Combination Sum III-回溯|递归
- 51nod 1279 扔盘子
- Codeforces Round #356 (Div. 2)-C. Bear and Prime 100
- POJ 2457 Part Acquisition【Dij+记录路径】
- 《CSAPP》读书笔记:编写高速缓存友好的代码
- CSS各种居中方法
- 红帽虚拟化RHEV3.2创建虚拟机(图文Step by Step)
- 手机开发实战116——STK介绍3
- TCP拥塞控制机制
- 利用老毛桃解决U盘装系统时Units specified don’t exist SHSUCDX can’t install
- 手机开发实战115——STK介绍2
- hihocoder1185 连通性·三
- acdream1408(递推+组合数)
- 手机开发实战114——STK介绍1
- 1. 添加命令
- TCP/IP协议三次握手与四次握手流程解析
- [从头读历史] 第248节 先天八卦和后天八卦
- charSet 和PageEncoding的区别