大话设计模式 之面向对象基础读后感
常说的OO是面向对象。面向对象编程,英文叫 Object Oriented Programming
何为对象? 对象是一个自包含的实体,用一组可识别的特性和行为来标识
何为类? 类就是具有相同的属性和功能的对象的抽象的集合。
(PS:谁拥有数据,谁就提供处理数据的方法。比如人开门,开门的方法是门的)
--------------------------------------------------------------
论封装
每个对象都包含他能进行操作所需要的所有信息,这个特性称为封装,因此对象不必依赖其他对象来完成自己的操作。
封装的好处:
1:良好的封装能够减少耦合。
2:类内部的实现可以自由的修改
3:类具有清洗的对外接口
--------------------------------
论继承
对象的继承代表了一种“is-a”的关系,如果两个对象A和B,可以描述为 “B是A”,则表明B可以继承A。如猫是哺乳动物。实际上,继承者还可以理解为是对被继承者的特殊化,因为它除了具备被继承者的特性外,还具备自己特有的个性。
继承定义了类如何相互关联,共享特性。继承的工作方式是,定义父类和子类,或者叫做基类和派生类,其中子类继承父类的所有特性。子类不但继承了父类的所有特性,还可以定义行的特性。
继承的三句话(如果子类继承父类)
1: 子类拥有父类非private的属性和功能。
2: 子类可以扩展父类没有的属性和功能
3: 子类还可以以自己的方式实现父类的功能
继承的缺点:父类变,子类不得不变。继承会破坏包装,父类的实现细节暴露给子类,增大了两个类之间的耦合性
-----------------------------------------------------------------
论多态
多态表示不同的对象可以执行相同的动作,但是要通过他们自己的实现代码来执行。
注意点:
1:子类以父类的身份出现
2:子类在工作时以自己的方式来实现
3:子类以父类的身份出现时,子类特有的属性和方法不可以使用
常说的OO是面向对象。面向对象编程,英文叫 Object Oriented Programming
何为对象? 对象是一个自包含的实体,用一组可识别的特性和行为来标识
何为类? 类就是具有相同的属性和功能的对象的抽象的集合。
(PS:谁拥有数据,谁就提供处理数据的方法。比如人开门,开门的方法是门的)
--------------------------------------------------------------
论封装
每个对象都包含他能进行操作所需要的所有信息,这个特性称为封装,因此对象不必依赖其他对象来完成自己的操作。
封装的好处:
1:良好的封装能够减少耦合。
2:类内部的实现可以自由的修改
3:类具有清洗的对外接口
--------------------------------
论继承
对象的继承代表了一种“is-a”的关系,如果两个对象A和B,可以描述为 “B是A”,则表明B可以继承A。如猫是哺乳动物。实际上,继承者还可以理解为是对被继承者的特殊化,因为它除了具备被继承者的特性外,还具备自己特有的个性。
继承定义了类如何相互关联,共享特性。继承的工作方式是,定义父类和子类,或者叫做基类和派生类,其中子类继承父类的所有特性。子类不但继承了父类的所有特性,还可以定义行的特性。
继承的三句话(如果子类继承父类)
1: 子类拥有父类非private的属性和功能。
2: 子类可以扩展父类没有的属性和功能
3: 子类还可以以自己的方式实现父类的功能
继承的缺点:父类变,子类不得不变。继承会破坏包装,父类的实现细节暴露给子类,增大了两个类之间的耦合性
-----------------------------------------------------------------
论多态
多态表示不同的对象可以执行相同的动作,但是要通过他们自己的实现代码来执行。
注意点:
1:子类以父类的身份出现
2:子类在工作时以自己的方式来实现
3:子类以父类的身份出现时,子类特有的属性和方法不可以使用