java程式設計思想筆記 多型部分四

2021-06-16 17:46:13 字數 804 閱讀 3579

1.在子類中的方法如果覆蓋了父類的方法,它的返回值可以是父類的返回方法的返回型別的子類。例如:

package test;

class r

class t extends r

class father

}public class p164 extends father

}

2.向下轉型:

父類的子類可以自由的進行向上轉型,使用父類來代表子類,這是因為,父類不會大於子類的介面。但是,如果想將父類強轉成子類,也就是進行向下轉型,就有可能產生類轉型異常,也就是classcastexception.例如,以下**中,如果作為父類的f想要轉成子類的型別p164,如果是使用useful test=new p167();這種方式來建立的,那麼強轉可以成功,而且可以呼叫子類中的父類沒有的擴充套件方法。但是,如果就是乙個父類的建立方式,useful test=new userful();那麼這種港式不能強轉為子類,會報出classcastexception。不管是不是呼叫的子類中的父類沒有的擴充套件方法,都會報錯。

package test;

class useful

public void g()

}public class p167 extends useful

public void g()

public void v()

public static void main(string args)

}

java程式設計思想筆記 內部類部分二

package com.wang.test public class test2 public static void main string args 以上是普通方式。如果內部類test3是乙個靜態類,則其與外圍類其實沒有任何關係,也不能訪問到外圍類的內部成員變數a。但是,如果是乙個靜態內部類,可...

java 程式設計思想筆記

1 陣列初始化 2 int a int a 花括號是陣列特殊初始化方式,相當於new。所有的陣列,不論是基本資料型別還是物件型別,成員length,最大下標 length 1.int a new int new random 43 nextint 20 arrays.tostring a 建立乙個引...

Java程式設計思想 筆記001

我們之所以將自然界分解,組織成各種概念,並按其 含義分類 主要是因為我們是整個口語交流社會共同遵守的協定和參與者,這個協定以語言的形式的形式固定下來.除非咱曾這個規定中規定的有關語言資訊的 組織和分類 否則我們根本無法交談 benjamin lee whorf 1897 1941 計算機革命起源於機...