黑马程序员技术交流社区

标题: 静态绑定是什么?动态绑定是什么? [打印本页]

作者: 颜仔    时间: 2014-10-24 17:36
标题: 静态绑定是什么?动态绑定是什么?
看毕老师的视频说到的,谁能具体解释一下。
作者: 15621506590    时间: 2014-10-24 18:47
静态绑定:
在程序执行前方法已经被绑定,此时由编译器或其它连接程序实现。例如:C。
针对java简单的可以理解为程序编译期的绑定;这里特别说明一点,java当中的方法只有final,static,private和构造方法是前期绑定

动态绑定:
后期绑定:在运行时根据具体对象的类型进行绑定。
若一种语言实现了后期绑定,同时必须提供一些机制,可在运行期间判断对象的类型,并分别调用适当的方法。也就是说,编译器此时依然不知道对象的类型,但方法调用机制能自己去调查,找到正确的方法主体。不同的语言对后期绑定的实现方法是有所区别的。但我们至少可以这样认为:它们都要在对象中安插某些特殊类型的信息。
作者: ll_shitou    时间: 2014-10-25 09:24
简单来说静态绑定就是绑死了,跟类直接绑定,运行时不会出现在寻找执行类对象的操作,动态绑定一般是与对象绑定,在运行前不知道运行的是谁,只是一个引用 ,具体到执行时再检查执行的是哪个类,这种事动态




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2