在CSDN看到一个博主的一个系列不错。叫的是《面向对象葵花宝典》,看的话必须自宫么-
-。学到了非常多,可是怎么记录呢?单纯的文字没有一个树形结构的概念,看起来也不清晰,我就自己花了一个思维导图记录一下~
专栏的地址是http://blog.csdn.net/column/details/oobaodian.html
本节记录的是该系列的6-13节
面向对象思想
封装
封装不想让别人知道或者看到的东西
封装属性、封装方法
保护隐私
隔离复杂度
抽象
类抽象成超类-行为相似
对象抽象成类-属性相似
发现类的主要方法
先有抽象,通过抽象得出类。后通过继承来表达抽象结果
对象
一个详细的类,一个真实的类
先是存在详细对象,然后归纳成类
类
一组相似事务的统称
仅仅要有相似点的就是同一类
仅仅强调方法的相似性
抽象类
抽象类仅仅能用于继承,不能被实例化为详细的对象
强调一组事物的相似性,包含属性和方法的相似性
具备类和接口的部分特性
接口
一组相关的交互功能点定义的集合
你不知道一个对象所属的详细“类”,仅仅知道这些对象都具备某种功能
继承
继承 = 遗传
“子类”遗传了了某些“父类”的属性和方法
有遗传就有变异,正由于有了变异
面向对象才有子类的出现
基于抽象结果。完毕抽象图的模拟
多态
不是变身、不是换装、不是状态变化
使用指向父类的指针或者引用。可以调用子类的对象
代码复用-面向接口编程
高扩展-当添加子类。代码无需变动就能适用新的子类