語法:
父類名 例項名 = new 子類名();
特點:1.不管是抽象類,具體類和介面,都可以實現子類例項化物件自動轉換成父類物件
2.如果存在方法的重寫,那麼這個物件呼叫的時子類的重寫後的方法(在抽象類和介面同一樣)
3.屬性沒有重寫的概念,那麼子類的例項賦給父類的引用時,呼叫的時父類的屬性
classp1}
class
p2extendsp1}
public
class
demo06
}
父類轉換成子類有前提,就是該物件是由子類轉換來的.而且只能轉換成之前的子類.
classp1}
class
p2extends
p1public
void
smoke()
}public
class
demo06
}
特點:
1.方法重寫時,呼叫的子類的屬性和方法.
2.能呼叫子類的特有的方法和屬性.
總結:
非static(類方法)方法: 編譯看左邊,執行看右邊! (及要配合抽象類和介面,因為他們中的方法也是抽象的).多型就是行為具有表現多種功能的能力.static方法:編譯看左邊,執行看左邊! (不必配合抽象類和介面,一切以左邊最終的引用型別為準)
屬性:都看左邊 (不必配合抽象類和介面,一切以左邊最終的引用型別為準)
classp1}
class
p2extends
p1public
void
smoke()
}class
p3extendsp1}
public
class
demo06
}
當子類p2的物件賦給父類的c1時,呼叫的的時p2的方法.然後再將p3的例項賦給c1,這時呼叫的是p3的方法
classp1}
class
p2extends
p1public
void
smoke()
}class
p3extendsp1}
class
testdemo11
}public
class
demo06
}
package test5;
inte***ce
p1class
p2implements
p1public
void
smoke()
}class
p3implementsp1}
class
testdemo11
}public
class
demo06
}
Java中的多型
多型也就是乙個名字多中狀態,這就叫多型。例如,人 老師,學生 老師和學生都是人,也就是人現在有兩種狀態。多型有四種型別 1,基本型別的多型。例如,byte,int,double,float,long。例如2,我們可以把它當作int型別,byte型別,long型別,還可以把其當作double型別。2說...
java中的多型
下面乙個例子,可以很清楚的給大家講解什麼是多型 父類 public class baseclass public void test 子類 public class subclass extends baseclass public void sub 呼叫 public static void ma...
Java中的多型
多型 某一種事物的多種存在形態 1 體現 父類引用指向子類的物件,即父類f 子類z,f fu new z 2 好處 大大提高程式擴充套件性 3 前提 必須是繼承或實現關係 且存在覆蓋 4 弊端 只能訪問父類的成員 轉型 父類引用指向子類物件時,又想要使用子類中的方法,那 麼就需要將該父類引用強轉成指...