Chinaunix首页 | 论坛 | 博客
  • 博客访问: 274156
  • 博文数量: 81
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 878
  • 用 户 组: 普通用户
  • 注册时间: 2014-07-25 23:20
文章分类

全部博文(81)

文章存档

2017年(45)

2016年(20)

2015年(2)

2014年(14)

我的朋友

分类: Windows平台

2017-02-27 20:32:54

面向过程是以过程(步骤)为中心的编程思想;
面向对象是以对象为中心的编程思想;三大特性的说明 继承 多态 封装
封装性:

  1. 类的封装性将敏感的数据保护起来,不被外界访问。通过权限控制符来实现

  2. public(公共的权限):任何地方都可以访问,主要指类外、本类中、子类中,都可以访问。

  3. private(私有的权限):只能在本类中被访问。在类外、子类中都无权访问。

  4. protected(受保护的权限):只能在本类中、子类中被访问。在类外无权访问。

继承性:

  1. 如果B类拥有了A类全部特征(属性和方法),我们就说,B类继承了A类。

  2. A类称为:基类、父类、上层类

  3. B类称为:派生类、子类、下v层类、后代类

  4. 继承:就是将父类的所有东西全部拿过来,一个不剩的。

  5. 在继承过程中,继承的东西只有一份,所有权应该属于父类,子类只是使用它。也可以理解为:将父类的内容引用到子类中来引用。

  6. 继承的目的是:对原来功能的升级和扩展。如果不需要升级和扩展,就不需要继承了。

  7. 功能升级:父类有的功能,子类也有,但是子类比父类更强大、更完善。

  8. 功能扩展:父类没有的功能,而子类有。

多态性:

  1. 类的多态,指多种形态。

  2. 类的多态,主要指方法重载和方法重写。

  3. 方法重载:在一个脚本中,定义两个同名方法,PHP不支持。

  4. 子类的方法名称,要与父类的方法名称一样;

  5. 子类方法的参数个数,要与父类同名方法的参数个数一致;

  6. 子类方法的权限,不能低于父类方法的权限。 ? 如果父类方法权限为public,子类方法权限也是public。 ? 如果父类方法权限为protected,子类方法权限是public、protected。
    ? 如果父类方法权限为private,可以重写,但是无法再调用父类的方法。

  7. 子类方法的类型,要与父类同名方法的类型一致。要是成员方法,都是成员方法;要是静态方法,都是静态方法。

面向对象四个重要的关键字?

>首先说说$this

$this只能在成员方法中; $this主要用来调用成员属性和成员方法;只能调用对象的东西。

>接着说说self

self可以在所有方法中使用。self主要用来调用类的常量、静态属性、静态方法,只能调用类的东西。

>关于parent关键字

parent可以调用父类的内容:成员方法、静态属性、静态方法、常量

>最后说说static关键字

static关键字修饰的属性和方法,就是静态属性和静态方法; 静态属性和静态方法,是与某个类相关的,与对象无关。 静态属性和静态方法,不创建对象也能调用。静态属性和静态方法的访问方式:ClassName::静态属性|静态方法.在内存中只有一份,不会随着对象增加而增加。可以节省内存资源static 也可用于后期静态绑定,相对与self来说 self表示的始终是当前的class 而static比较灵活 表示的是当前的累

补充一张图说明内存分配:

抽象类和抽象方法

  1. Abstract关键字修饰的类,为抽象类;

  2. Abstract关键字修饰的方法,为抽象方法;

  3. 抽象类:该类不能实例化,继承后,再实例化。常用于基础类

  4. 抽象方法:该方法必须被重写。

  5. 抽象方法不能包含方法体,就是函数的大括号。

  6. 如果一个类中有一个抽象方法,该类必须定义抽象类。

  7. 抽象方法中,可以包含其它成员:成员属性、成员方法、静态属性、静态方法、常量。

  8. 抽象方法是方法的命名规范、命名规则。也理解为监督的机制。

最终类和最终方法:

  • final关键字修饰的类,就是最终类;

  • final关键字修饰的方法,就是最终方法;

  • 最终类:该类只能实例化,不能继承。如果一个类十分完善,不需要升级和扩展,就定义最终类。

  • 最终方法:该方法只能继承,而不能重写。如果一个方法十分完善,不需要重写了,就定义为最终方法。

  • 举例:数据库类,一般都是最终类。

阅读(2918) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~