<img src="https://wx.javatiku.cn/j/j301-t.jpg" onerror="this.src='http://idea.javatiku.cn/j/j301-t.jpg';" style="max-width: 100%;"> <p>将方法调用与方法体关联起来被称为绑定。</p><p>在Java中,有两种类型的绑定:</p><ol><li>静态绑定(也称为早期绑定):在编译时确定方法的调用。</li><li>动态绑定(也称为后期绑定):在运行时根据实际对象类型确定方法的调用。</li></ol><p>让我们来了解一下对象的类型。</p><h4>1)变量具有类型</h4><p>每个变量都有一个类型,它可以是原始类型或引用类型。</p><pre></pre><p>这里的数据变量是一种 int 类型。</p><h4>2)引用有一个类型</h4><pre></pre><h4>3)对象有类型</h4><p>对象是特定 java 类的实例,但它也是其超类的实例。</p><pre></pre><p>这里 d1 是 Dog 类的一个实例,但它也是 Animal 的一个实例。</p><p>当对象的类型在编译时(由编译器)确定时,称为静态绑定。</p><p>静态绑定发生在以下情况下:</p><ul><li>当调用类中的私有方法时。</li><li>当调用类中的最终方法时。</li><li>当调用类中的静态方法时。</li></ul><p>在这些情况下,编译器能够确定方法的调用,因为它们与类的定义相关,并且不会受到运行时对象的影响。</p><pre></pre><p>当对象的类型在运行时确定时,称为动态绑定。</p><pre></pre><p>输出:</p><pre></pre><p>在上面的例子中,编译器无法确定对象类型,因为 Dog 的实例也是 Animal 的实例。所以编译器不知道它的类型,只知道它的基类型。</p>
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/14465.html