1、什么是类
类是一种结构,表示一批事物的抽象,在程序中表示对象的数据类型,是构造对象的模板
2、什么是对象
对象是一个抽象的概念,现实中的事物都可以抽象成对象,是类的一个实例,具有属性和操作属性的方法
区别:类泛指一批事物,是数据类型,对象指特定的一个事物
3、什么是面向对象
面向对象是一种编程思想,相对于面向过程
面向过程指分析解决问题所需要的步骤,先做什么,然后做什么,按步骤解决问题,具有一定的流程
面向对象将问题分解成几个对象,每个对象完成特定的功能,各个对象相互配合共同解决问题,例如一个简单的播放视频的应用:至少可以分解为一个管理播放,暂停,停止,快进,快退等播放控制的对象,一个管理视频数据的对象,一个管理界面的对象
4、封装
信息隐藏,将数据和基于数据的操作封装到一起,使构成一个整体,隐藏了内部细节,只对外提供一些公开接口,使用者无法修改内部细节,而且使用的时候不必了解实现细节,只能调用公有接口,提高了程序的安全性。要求将所有的属性私有化,对每个属性提供get和set方法
5、继承
在已有类的基础上创建一个新类,对已有类进行扩展,分别称为子类和父类,是is-a的关系,子类可以继承父类的公有属性和方法,也可以拥有自己的属性和方法,扩展了功能,提高代码复用,是实现多态的基础
6、多态
相同的事物,调用相同的方法,但是行为却不同,实现:子类继承父类,子类重写父类的方法,父类的引用指向子类对象,在程序运行时,调用的是子类的方法;实现接口;同一个类中进行方法重载
7、类与类之间的关系
最常见的有:
继承(is-a):从属关系,子类继承父类,拥有父类的属性和方法,也可以对父类扩展,拥有自己的属性和方法
依赖(use-a):一个类的方法操纵另一个类的对象
关联:类A中包含类B的引用
聚合(has-a):类A包含类B的对象,整体和个体
组合:类A包含类B的对象,表示整体与部分,部分不能脱离整体而存在,整体和部分生命周期相同
实现:接口定义操作的集合,由实现类完成接口的具体操作