面向对象和面向过程的区别
面向过程: 分析出解决问题的所需要步骤,然后用函数把这些步骤一步一步实现,使用的时候 依次调用函数即可。强调的是步骤,最小的程序单元是函数。
优点:性能比面向对象高。因为类调用时需要实例化,开销比较大,比较消耗资源,而面向过程的语言大多都是直接编译成二机制码在电脑上执行,可以减少资源的消耗。所以当性能是重要参考因素时,比如单片机,嵌入式开发等采用面向过程开发。 缺点:⾯向过程没有⾯向对象易维护、易复⽤、易扩展
面向对象:把构成问题事务分解成各个对象,建立对象的目的在于描述某个事物在整个解决问题的步骤中的行为。强调的是对象,最小的程序单元是类
优点:⾯向对象易维护、易复⽤、易扩展。由于面向对象有封装、继承、多态等特性,可以设计出低耦合的系统,使系统更加灵活更加易于维护。 缺点:性能比面向过程低。原因在于Java是半编译语言,最终的执行代码并不是可以直接执行的二进制码