Java學習日記DAY29

2021-09-20 13:15:30 字數 1905 閱讀 9965

多型

1.向上轉型、隱式轉型、自動轉型

父類引用指向子類例項,可以呼叫子類重寫父類的方法以及父類派生的方法,無法呼叫子類獨有方法

注意:父類中的靜態方法無法被子類重寫,所以向上轉型之後,只能呼叫到父類原有的靜態方法,想要呼叫子類中的靜態方法需要重新向下造型

小類轉型為大類

2.向下轉型、強制型別轉換

子類引用指向父類物件,此處必須進行強轉,可以呼叫子類特有的方法

必須滿足轉型條件才能進行強轉

instanceof運算子:返回true/false

3.**如下

package com.liuermeng.animal;

public class animal

public animal(string name,int month)

public string getname()

public void setname(string name)

public int getmonth()

public void setmonth(int month)

//方法:吃東西

public void eat()

//父類中的靜態方法

public static void say()

}

package com.liuermeng.animal;

public class cat extends animal

public cat(string name,int month,double weight)

public double getweight()

public void setweight(double weight)

//方法:跑動

public void run()

//方法:吃東西(重寫父類方法)

@override

public void eat()

//子類中也定義乙個相同的static方法。注意這個不是重寫,是與父類中方法無關的另乙個靜態方法

public static void say()

}

package com.liuermeng.animal;

public class dog extends animal

public dog(string name,int month,string ***)

public string get***()

public void set***(string ***)

//方法:睡覺

public void sleep()

//方法:吃東西(重寫父類方法)

@override

public void eat()

}

package com.liuermeng.test;

import com.liuermeng.animal.animal;

import com.liuermeng.animal.cat;

import com.liuermeng.animal.dog;

public class test

if(two instanceof dog)

if(two instanceof animal)

if(two instanceof object)

}}

輸出

貓吃魚~~

動物們都會打招呼

***************==

貓吃魚~~

小貓快樂的奔跑

two可以轉換為cat型別

animal

object

day29 學習總結

編譯時期異常 語法問題,需要開發人員顯示處理 執行時期異常 runtimeexception繼承自exception第一種 捕獲異常 trycatch 異常類名 物件名 finally 第二種 丟擲異常 throws throw 注意 開發中,多使用第一種方法1.位置不同 throws 位於方法宣告...

day 29 模組和包

閱讀目錄 一。模組和指令碼 模組 定義 如果乙個py檔案被匯入了,他就是乙個模組 指令碼 定義 如果乙個py檔案被直接執行了,那他就是乙個指令碼 模組 1.沒有具體的呼叫過程 2.但是能對外提供功能 當乙個模組被匯入時,如果pyc檔案不存在,python直譯器就回去建立,存在不會再次被建立 pyc編...

牛客網刷題day29

1.given the following class public class cat public static void main string arg which expression returns true?b a.c1c2 b.c2c3 c.m c1 d.c1.equals m 解析 ...