面向对象的思想概述
面向对象的编程思想 力图使计算机语言中对事物的描述与现实世界中该事物的本来面目尽可能的一致。类(Class)和对象(Object)是面向对象核心方法的概念。类是对一类事物的描述,是抽象的、概念上的定义;对象是实际存在的该类事物的每个个体,因而也称实例(Instance)。如果将对象比作汽车,那么类就是汽车的设计图纸,所以面向对象程序设计的重点是类的设计,而不是对象的设计。
面向对象的程序设计 类 的特性:
- 抽象 类定义:类是一组具有相同特性和行为的一组对象的抽象。
- 继承:在归纳与演绎过程中,形式大类和小类,大类与小类之间就有继承关系。大类称为基类(父类)、小类称为派生类(子类)。父类是子类更高的抽象。子类继承父类所有的特征和行为。在java中通过继承,提供类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高软件的重用性。
- 封装:对象之间的相互联系、相互作用,是通过消息机制完成。对象之间不需要过多的了解对方的特性和行为。对象的特征和行为是封装。类定义将其说明与实现显式的分开。类是封装的最基本的单位,对属性、方法进行封装。 封装可以防止程序相互的依赖性而带来的变动影响。
- 多态性:不同事物同一个行为,在不同的类中,表现出现的行为是不一致的。java是指同名的方法在不同的类中具有不同的实现。在父类演绎子类时候,类的方法同样可以演绎。演绎使子类的方法更加符合子类的要求,子类可能更加具体化父类方法实现,也可能不同于父类的方法实现
- 重载:同一行为,消息详情程度不一样,做成反馈也不一样。java类中的同名方法,在传递参数详细情况不一样,具有不一样的响应。在对象之间相互的作用、接收消息的详细情况不同,对象的反馈也不一样。
面向对象的三大特征:
1)封装(Encapsulation)
对象的属性、方法实现是对外界不可见。
2)继承(Inheritance)
父子关系。
3)多态(Polymorphism)
方法重载、方法重写、对象类型转换。
java是纯粹的面向对象编程语言。完全支持面向对象的三大特征。java程序的组成单位是类。不管多大的程序,都是一个个类组成(面向类的编程)。