1.概念
通俗的讲,即人们认识未知事物的一种方式。采用了类比的手法。(对象是类进行实例化后的结果)
外观==>属性
类 ==> 抽象 ==> 做的事==>行为
对象 ==>具体化
2.三大特征 封装 继承 多态 (抽象)
1) 封装:即隐藏。隐藏的是被修改的能力。封装的目的:不让别人随意去修改。
封装有哪些运用:(从小到大) 访问修饰符的运用;所有函数,方法,魔术方法;类(属性,行为);文件;文件夹。
2) 继承:即拓展父类的内容。 注意只能继承public和protected修饰的内容,而private修饰的则不能继承。
关键字: extends。
PHP中继承是单继承,即extends后面只能有1个类名;但是1个类可以有无数个子类。
子类和父类只能出现在有继承关系的2个类之间。
3) 多态:是指在面向对象中能够根据使用类的上下文来重新定义或改变类的性质和行为。
3.重写
1) 定义:在子类中出现和父类同名的方法,这个称为重写。行为的重新定义。 重写只能发生在有继承关系的类之间,方法名称相同即重写,与参数没有关系。 重写时,访问修饰符的可以访问的范围不能低于父类中的访问修饰符。 对于private修饰的方法不能重写。
4.关键字 $parent: : $this $self: :
1)$parent: : 调用父类的函数,方法。(: : 域作用符)
2)$this 调用的是当前这个类(对象)的属性与函数。
3)$self(自身) 常用静态方法;常量也可调用 。
5.接口(interface) =>用implements实现
接口: 它是一个特殊的类,但是名称变成了interface。
在接口中定义的只能是公共的抽象方法(没有函数体部分),也可以有静态常量。
接口采用的插件式配置,可以随意的匹配给任意一个类。
类可以实现(implements)接口,类实现的接口可以有无数个。
当1个类实现了接口后,该接口的所有的方法必须在该类中实现。
instanceof: 运算符 ,用于类型的判断,判断某个参数对象是否属于某个类。
6.关键字 final(最终的)和 static(静态的)
final:关键字,意思是终态的,最后的。
它可以修饰 函数方法(行为) ,被修饰的函数方法(行为)不能被重写。
final可以修饰 类class,但是被修饰的类不能被继承。
类当中的属性不能被final修饰。
static: 关键字,意思是静态的。
它可以修饰 属性变量 ,也可以修饰 函数方法(行为)。
静态资源加载和普通的非静态的资源加载是不一样的。
在非静态方法中可以调用静态方法,但是反过来就不行。
静态static修饰的内容被创建不需要有对象存在,同时它们是被放置在静态区当中。
静态资源的标准访问方式是====> 类名::静态资源名称。
7.异常处理
通常错误的提示信息不会对用户开放,但是用户操作时必须明确是否能够正确的执行
因此我们需要对于可能出现问题的代码内容作出处理,这个就被称为异常处理
异常处理操作: try ... catch... 代码块
try 当中包含可能出现问题的代码,而用catch来对出现的异常进行捕获
一旦有定义好的异常出现,那么在该异常后的语句被跳过不再执行,而去执行输出catch块中的代码
在php中,一般是判断是否能正确返回或者获取到需要的对象或数值,如果没有,则使用throw关键字,抛出异常信息
异常需要大家经验来获取,什么时候会有异常,什么样的异常需要处理和避免。
8.命名空间
命名空间 namespace 在它之后是空间的名称
在同一个php文件中,可以先后使用多个不同名称的命名空间
9.访问修饰符
public 公共的 谁都可以用,也可以修改。
protected 受保护的 只有自己和后代可以使用和修改。
private 私有的 只有自己可以使用和修改。