面向对象
面向对象的三大特征是:封装,继承,多态;而它的基础则是:抽象。一个对象能够满足要求,可以不必关心它的具体实现过程与面向过程思想:先算法后数据;不同的是:面向对象:先数据后算法面向对象更适合处理规模较大的问题,面向过程则相反
依赖 与 聚合
依赖:uses-a的关系,即: 一个类对象的方法操作另一个类对象。聚合:has-a的关系,即:一个类对象包含另一个类对象
低耦合高内聚
A类对象(模块)状态改变时,B类对象(模块)也要跟着改变(A、B间依赖关系严重)即:耦合解决耦合的方法
加入中间层(A/B不应该聚合时),A、B对象之间加入C对象,使原来A直接作用于B的关系,变为:A作用于C,C再作用B的间接关系A、B聚合:A包含B,或者C同时包含A、B
指针与引用的区别
相同点: 都指向一块内存
不同点:
指针引用
指向内存块的首地址,需要的时候可以让它指向别的内存引用与对象(内存块)绑定,不可以再指向别的对象(内存块)指针需要手动分配存储空间(声明,赋值)对象生成时已初始化好,包含在对象内(自己猜的)
也就是说:
一个对象包含三个部分:1.状态(成员变量)2.行为(方法)3.唯一标识identity(引用)