面向对象基础
2019-03-17 22:01:13 0 举报
AI智能生成
面向对象基础
作者其他创作
大纲/内容
三大特性
封装
将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问
好处
只能通过规定的方法访问数据
隐藏类的实例细节,方便修改和实现
继承
继承是类与类的一种关系,是一种“is a”的关系
好处
子类拥有父类的所有属性和方法(除了private修饰的属性不能拥有)从而实现了实现代码的复用
多态
多态就是对象的多种形态
引用多态
父类的引用可以指向本类的对象
父类的引用可以指向子类的对象
方法多态
创建本类对象时,调用的方法为本类方法
创建子类对象时,调用的方法为子类重写的方法或者继承的方法
继承是多态的基础
面向对象设计的六大基本原则
开闭原则
OCP(Open-Closed Principle)
OCP(Open-Closed Principle)
扩展
开放
修改
关闭
依赖倒置
DIP(Dependence Inversion Principle)
DIP(Dependence Inversion Principle)
要针对接口编程,不要针对实现编程
依赖次序
高层
低层
细节
迪米特法则
LoD(Law of Demeter)
LoD(Law of Demeter)
又叫作最少知识原则(Least Knowledge Principle 简写LKP)
一个对象应当对其他对象有尽可能少的了解,不和陌生人说话
对象关系
少了解
朋友
1)当前对象本身(this)
2)以参量形式传入到当前对象方法中的对象
3)当前对象的实例变量直接引用的对象
4)当前对象的实例变量如果是一个聚集,那么聚集中的元素也都是朋友
5)当前对象所创建的对象
serializable
谨慎
单一职责
SRP(Single-Responsibility Principle)
SRP(Single-Responsibility Principle)
一件事
一个方法
变更
一个原因
里氏代换原则
LSP(Liskov Substitution Principle)
LSP(Liskov Substitution Principle)
基类
子类替换
继承
一个软件实体如果使用的是一个基类,那么当把这个基类替换成继承该基类的子类,程序的行为不会发生任何变化
接口隔离
ISP(Interface Segregation Principle)
ISP(Interface Segregation Principle)
接口
最小化
必要
其他概念
方法重载
普通方法重载
构造方法重载
方法重写
0 条评论
下一页