对比面向过程来说,是两种处理问题的不同角度
面向过程更注重事情的每一个步骤以及相应的顺序
面向对象更注重事情的参与者(对象)、以及各自需要什么做什么(行为)
举个例子: 用洗衣机洗衣服
面向过程:打开洗衣机——>放入衣服——>放入洗衣粉——>清洗——>烘干
面向对象:有两个对象分别是操作者、洗衣机。各自具备的行为
操作者:打开洗衣机、放入衣服、放入洗衣粉
洗衣机:清洗、烘干
从以上例子可以看出:面向过程比较直接高效、面向对象易于复用、扩展和维护
java的三大特性:封装、继承、多态
封装
明确标出允许外部使用的所有成员函数和数据项,其内部细节对外部调用透明,外部调用无需修改或者关注内部实现
继承
继承基类的方法,并做出自己的扩展,子类共性的方法或属性直接使用父类的,而不需要自己再定义
多态
基于对象的所属类不同,外部对同一个方法的调用,实际执行的逻辑不一样