JAVA動手動腦

來源:互聯網
上載者:User

標籤:cell   div   extends   隱式   調用   and   blog   dex   技術   

1.運行 TestInherits.java 樣本,觀察輸出,注意總結父類與子類之間構造方法的調用關係修改Parent構造方法的代碼,顯式調用GrandParent的另一個建構函式,注意這句調用代碼是否是第一句,影響重大!

論  通過supper 調用的基類構造方法 必須是子類的構造方法中的第一個語句

參看ExplorationJDKSource.java樣本此樣本中定義了一個類A,它沒有任何成員:class A { }樣本直接輸出這個類所建立的對象參看ExplorationJDKSource.java樣本此樣本中定義了一個類A,它沒有任何成員:class A { }樣本直接輸出這個類所建立的對象

class檔案彙編可得



前面執行個體中main方法調用的是

public void println(Object x),這一方法內部調用了String類的valueOf方法

          public String toString(){

                     return getClass().getName()+"@"+Integer.toHexString(hashCode);

                }

hashCode方法是本地方法,有jvm設計者實現

 

我們來看一段代碼(樣本Fruit.java ):public class Fruit{            public String toString()    {        return "Fruit toString.";    }    public static void main(String args[])    {        Fruit f=new Fruit();        System.out.println("f="+f);    //    System.out.println("f="+f.toString());    }}注意最後一句,一個字串和一個對象“相加”,得到以下結果:

 

結論在“+”運算中,當任何一個對象與一個String對象,串連時,

會隱式地調用其toString()方法,預設情況下,此方法返回“類名 @ + hashCode”。為了返回有意義的
資訊

,子類可以重寫toString()zz
1 在“+”運算中,當任何一個對象與一個String對象,串連時,會隱式地調用其toString()方法,預設情況下,<br>此方法返回“類名 @ + hashCode”。為了返回有意義的資訊,子類可以重寫toString()方法。
123 方法覆蓋要求子類與父類的方法一模一樣,否則就是方法重載(overload)!請自行編寫代碼測試以下特性:在子類中,若要調用父類中被覆蓋的方法,可以使用super關鍵字。

 

class fulei{

public int jianfa(int a,int b){

 

int s;

s=a-b;

return s;

}

 

 

}

class add1 extends fulei{

 

 

 

public int jianfa(int a,int b){System.out.println("調用父類的"+super.jianfa(3,4));

int s;

s=a-b;

return s;

 

}

 

}

 

public class TestInherits {

 

public static void main(String args[]) {

add1 c = new add1();

System.out.println("調用子類的"+c.jianfa(3,4));

 

}

}

 

JAVA動手動腦

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.