子類繼承了什麼、多態、 向上轉型
- 2022 年 6 月 11 日
- 筆記
子類繼承了什麼
我們來想一個問題,子類繼承了什麼
我們來看
public class Animal {
String name;
int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Animal{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
我們的父類寫了一個名字和年齡寫了gat和set,在看我們子類
public class Cat extends Animal{
}
什麼都沒有寫,但是在測試類的時候我們輸出就可以得到父類的東西 。那麼可知i子類繼承父類的話
就可以獲得父類中的方法和定義的變數,但是如果想給變數賦值 必須有get和set來獲取給予!
多態
首先什麼是多態:多態是指不同類的對象在調用同一個方法是所呈現出多種不同行為。
使用條件:
(1)要有繼承或者實現的關係
(2)要有方法重寫
(3)要有父類引用指向子類對象
作用: 消除了類之間的耦合關係,提高了程式的可擴展性和可維護性
耦合指的是程式碼(程式)之間的關聯程度
語法格式:父類類名 引用名稱 = new 子類類名();
案例:
public class Animall {
public void shout(){
System.out.println("動物的叫聲");
}
}
創建一個父類,在父類中定義方法
public class Cat extends Animal {
public void shout(){
System.out.println("喵喵····");
}
}
創建一個Cat類型,繼續父類,在子類中定義一個方法
寫一個測試類
public class Test {
public static void main(String[] args) {
Cat cat = new Cat();
cat.shout();
}
}
結果
向上轉型
父類引用指向子類對象
格式:父類類名 對象名 = new 子類類名;