什么是面向对象
面向对象是一种对现实世界理解和抽象的方法,是一种编程思想和方法,它将程序中的数据和操作数据的方法封装在一起,形成对象,并通过对象之间的交互和消息传递来完成程序的功能。
面向对象编程强调 数据的封装、继承、多态和动态绑定等特性,使得程序具有更好的可扩展性、可维护性和可重用性。
面向对象主要有四大特性
1、抽象
2、封装
3、继承
4、多态
一、抽象
抽象包括两个方面,一个是数据抽象,一个是过程抽象。
数据抽象表示一类事物的特征,就是对象的属性。
过程抽象表示一类事物的行为,就是对象的方法。
比如针对鸟进行抽象,鸟有翅膀,羽毛等这些表示类的属性,鸟会飞,会叫表示类的方法
二、封装
封装就是把过程和数据包围起来,对数据的访问只能通过已定义的方式。比如私有变量,用set,get方法设置获取。
封装保证了模块具有较好的独立性,使得程序维护修改较为容易。对应用程序的修改仅限于类的内部,因而可以将应用程序修改带来的影响减少到最低限度。
三、继承
对象的一个新类可以从现有的类派生,这个过程称为类继承。
新类继承了原始类的特性,新类成为原始类的派生类(子类),原始类称为新类的基类(父类)。
派生类可以从它的父类那里继承方法和实例变量,并且类可以修改和增加新的方法使之更适合特殊的需要。因此可以说,继承为了重用父类代码。同时 为了实现多态性做准备。
四:多态
多态是指允许不同类的对象对同一消息做出相应。多态性包含参数化多态性和包含多态性。
多态性语言具有灵活/抽象/行为共享/代码共享的优势,很好的解决了应用程序函数同名问题。总的来说,方法的重写,重载和动态链接构成多态性。
动态链接:对于父类中定义的方法,如果子类中重写了该方法,那么父类类型的引用将调用子类中的这个方法,这就是动态链接。
面向对象的优点。
1、开发时间段,效率高,可靠性高,所开发的程序更强壮。由于面向对象编程的可重用性,可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。
2、应用程序更易于维护,更新和升级。继承和封装使得应用程序的修改带来的影响更加局部化。