在面向对象程序设计中,设计了对象、类、封装、继承、消息传递和多态等基本概念,下面就分别来谈谈这些概念:
- 对象(object):好比一个人,有多种属性:姓名、性别、年龄、体重等,都有多种行为:吃饭、走路等,对象=属性+行为;
- 类(class):具有相似属性和行为的一组对象,则称为类,实质上类就是一种类型,但是这种类型和一般的类型不同,类包含数据结构和成员函数。而类在面向对象程序设计中以数据为中心,将数据和对数据的操作绑定在一起的思想。类与对象之间的关系就是具体与抽象的关系,类是多个对象进行综合抽象的结果,一个对象就是类的一个实例:例如“学生”是一个类,它是由千千万万个具体的学生抽象而得来的。
- 消息(message):由于面向对象程序设计是由对象组成的,对象之间需要通过消息传递来达到协调工作的目的。消息是一对象向另一个对象发出执行某种操作的请求,而对象执行操作称为对消息的响应。从实现代码看,消息就是通过一个对象对类的成员函数的一次调用;
- 方法(method):根据上边的消息的概念,方法就是对象能执行的操作
基本特征
- 抽象性:对特定实例进行抽象获取共同特征形成概念,对数据和行为都抽象
- 封装性:把数据和实现操作的代码集中起来放在对象内部,并尽可能隐藏对象的内部细节
- 继承性:在已有类的基础上增加新特性而派生出新的类,原有的称作基类,新建的叫做派生类
- 多态性:是不同的对象收到相同的消息产生多种不同的行为方式。例如接受到一个“移动”的消息,在Windows类和piece类对象上可以有不同的行为