Java语言最大的特点就是面向对象设计,并且面向对象编程设计也在于Java自身发展而不断发展,同时很多最初不支持面向对象编程也都开始转向了面向对象编程,但是依然有许多的开发者认为面向对象是不完善的,而面向过程会比较好,或者说使用函数式编程比较好。
最早并且一直到先在都在流行的编程语言C、C++、Java,其中C语言已经变成面向过程开发的一个代表,而C++、Java都是面向对象的一个编程语言。
所谓面向过程是指面对一个问题的解决方案,更多的情况下,是不会做出重用的设计思考,而面向对象的的设计方式是模块化设计,并且可以进行重用配置,面向对象的程序设计里面更多的考虑的是标准,在使用的时候根据模块进行拼装。
面向对象程序设计的四大核心特性:
1.封装性:将数据和数据的操作包装成一个对象,使对象成为包含一组属性和操作的运行单位,其次是实现信息的隐藏,以约束外部的可见性;
2.继承性:在已有类的基础上进行一个功能的扩充或者是一个功能的复用;
3.多态性:在继承性的基础上扩充而来,指的是类型的转换处,主要有方法的多态和类型的多态;
4.抽象性:是指从具体的例子中抽象出共同的性质并加以描述的特性。
在进行面向对象开发的过程中一般还有三个步骤:
OOA:面向对象分析
OOD:面向对象设计
OOP:面向对象编程