面向过程注重过程,就是要分析出解决问题需要的步骤,然后按步骤一步一步实现,类调用时需要实例化,开销比较大,性能比面向对象高
面向对象最主要的就是把构成问题的事务分解成各个对象,把对象封装成方法,然后调用方法,优点就是易维护,易扩展,提高了可重用性。
-
封装就是将一个对象的属性隐藏起来,不允许外界直接访问,但是可以通过调用指定的方法进行访问(name域只能通过,get set方法访问)
-
继承就是子类继承父类的所有的方法,而且可以拥有自己的方法,提高了代码的重用(对扩展是开放的)
-
多态就是父类引用指向子类对象,可以有继承和重写,动态绑定是多态性得以实现的重要因素
动态绑定是指:在程序运行过程中,根据具体的实例对象才能具体确定是哪个方法。
动态绑定静态绑定区别:
程序在JVM运行过程中,会把类的类型信息、static属性和方法、final常量等元数据加载到方法区,这些在类被加载时就已经知道,不需对象的创建就能访问的,就是静态绑定的内容;需要等对象创建出来,使用时根据堆中的实例对象的类型才进行取用的就是动态绑定的内容。