1.面向对象思想
(1)概述:面向对象是相对于面向过程而言的,
面向过程强调的是功能,
面向对象强调的是将功能封装进对象,
强调具备功能的对象
(2)思想特点:
A:是符合人们思考习惯的一种思想;
B:将复杂的事情简单化了;
C:将程序员从执行者变成了指挥者
2.特征:
封装:隐藏对象的属性和实现细节,仅对外提供公共访问方式
继承: 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需 再定义这些属性和行为,只要继承那个类即可。
多态: 一个对象在程序不同运行时刻代表的多种状态,父类或者接口的引用指向子类对象
3. 封装的好处:
3.1.将变化隔离;
3.2.方便使用;
3.3.提高复用性;
3.4.提高安全性
4.继承的好处:
4.1.继承的出现提高了代码的复用性。
4.2.继承的出现让类与类之间产生了关系,提供了多态的前提。
5.面向对象的特征有哪些方面
5.1. 封装,隐藏内部实现,只暴露公共行为
5.2. 继承,提高代码的重用性
5.3. 多态,体现现实生活中相似对象的差异性
5.4. 抽象,抽取现实世界中相似对象的共同点
6.接口的特点
A:是对外暴露的规则
B:是功能的扩展
C:接口的出现降低耦合性。
耦合(类与类之间的关系)
内聚(类完成功能的能力)
编程规范:低耦合,高内聚。
D:接口可以多实现。
7.接口和抽象类的区别
A:抽象类只能被单继承
接口可以多实现,接口的出现避免了多继承的局限性。
B:抽象类中的数据特点:
成员变量:可以是变量,也可以是常量
成员方法:可以是抽象方法,也可以是非抽象方法
构造方法:有构造方法
接口中的数据特点:
成员变量:是常量。默认修饰 public static final
成员方法:都是抽象方法。都有默认修饰 public abstract
构造方法:没有构造方法
C:抽象类中定义的是继承体系中的共性功能。
接口中定义的是继承体系中的扩展功能。
D:抽象类被继承是"is a"关系:xx是yy的一种
接口被实现是"like a"关系:xx像yy的一种