在多态中:成员变量和静态方法编译和运行都看左边;成员方法编译看左边,运行看右边,这是为什么; 在Java中存在两种绑定方式,一种为静态绑定,又称作早期绑定。另一种就是动态绑定,亦称为后期绑定 1.静态绑定发生在编译时期,动态绑定发生在运行时 2.使用private或static或final修饰的变量或者方法,使用静态绑定。而虚方法(可以被子类重写的方法)则会根据运行时的对象进行动态绑定。 3.静态绑定使用类信息来完成,而动态绑定则需要使用对象信息来完成。 4.重载(Overload)的方法使用静态绑定完成,而重写(Override)的方法则使用动态绑定完成。 5.静待绑定是在编译时就已经确定该使用哪个变量或调用哪个方法;动态绑定是在运行是确认调用哪个方法更合适,是一个选择的过程,因为在多态中子类会重写父类的方法,这样就会出现多个重名的方法,在调用时会根据子类对象确认哪个方法更适合子类对象
AJPFX关于多态中的动态绑定和静态绑定的总结
转载
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
关于Qt程序中动态和静态的几点总结
在Qt程序中,分动态库版本的Qt和静态库版本的Qt。官方默认提供的二进制
数据库 qt sqlserver 动态库 静态库 -
静态绑定和动态绑定
静态绑定和动态绑定
动态绑定 静态绑定 父类