第二周总结
编程语言的实质
目的:用计算机解决现实世界的问题
过程:现实世界的问题转化为计算机所能理解的模型
编程语言是一种抽象机制,将现实世界中的问题进行抽象
什么是面向对象编程
核心观点:万物皆对象
面向对象编程三要素
封装性
定义接口
隐藏实现细节(访问控制)
继承性
IS-A关系
HAS-A关系(组合)
多态性
运行时绑定
向上转型
面向对象的设计原则
目的:强内聚,松耦合
开闭原则
对于扩展是开放的
对于更改是封闭的
依赖倒置原则
高层模块不能依赖底层模块,依赖于抽象
抽象不能依赖实现,而是实现依赖抽象
里氏替换原则
凡是使用基类的地方一定也适用于其子类
从java语法看意味着:子类一定拥有基类的整个接口,子类的访问控制不能比基类更严格
单一职责原则
内聚性原则,一个模块的组成元素之间的功能相关性
一个类,只有一个引起它的变化的原因
接口分离原则
不应该强迫客户端程序依赖它们不需要的方法
评论