<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. java語言

    java動態方法調度實例

    時間:2025-04-26 07:19:33 java語言 我要投稿
    • 相關推薦

    java動態方法調度實例

      動態方法調度:

      1. 訪問一個引用型的變量的非靜態方法,運行時與實際引用的對象的方法綁定。

      2. 訪問一個引用型的變量的靜態方法,運行時與聲明的類的方法綁定。

      3. 訪問一個引用型的變量的成員變量(包括靜態變量和實例變量),運行時與聲明的類的成員變量綁定。

      第3點尤其注意啊,之前我從來沒注意過啊

      1. 非靜態方法:

      public class Person {public String name; public void getInfo() { System.out.println("父類"); }}public class Student extends Person { public void getInfo() { // 方法重寫 super.getInfo(); // 調用父類的方法 System.out.println("子類");}public static void main(String[] args) { Person s = new Student(); Person t = new Person(); s = t; // S的對象類型是父類,即Person類 s.getInfo();}}

      運行結果為:父類

      2. 靜態方法:

      public class Person {public String name; public static void getInfo() { System.out.println("父類"); }}public class Student extends Person {Publics static void getInfo() { // 方法重寫System.out.println("子類");}public static void main(String[] args) {Person s = new Student();s.getInfo(); //等價于Person.getInfo();}}

      運行結果為:父類

      3. 成員變量

      public class erson {public String name = "father"; public void getInfo() { System.out.println("父類"); }}public class Student extends Person {public String name = "son";public void getInfo() { // 方法重寫super.getInfo(); // 調用父類的方法System.out.println("子類");}public static void main(String[] args) {Person s = new Student();Person t = new Person();s = t;System.out.println(s.name);}}

      運行結果:fanther

      將成員變量變為static類型的也是一樣的

      另外對于如下兩個變量

      Students = new Student();Person t = new Student();

      不過這兩者實際上是有區別的,當子類Student中有了自己的個性方法(在父類中沒有的)時,比如有了方法

      public goSchool(){}

      那么只有s可以調用這個goSchool方法

      而t不能調用

      希望本文所述對大家java程序設計有所幫助。

    【java動態方法調度實例】相關文章:

    關于Java動態實現的方法08-23

    Java中的== 和equals()方法詳解與實例教程08-03

    Java實例化的四種方法介紹08-23

    JAVA的動態代理分析09-14

    java調用c函數的實例09-16

    Java鍵盤輸入實例07-06

    Java中的Spring入門實例09-15

    Java中synchronized的使用實例05-31

    JAVA語言中的實例變量06-01

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人