iT邦幫忙

2021 iThome 鐵人賽

DAY 17
0
自我挑戰組

菜雞的JAVA日記系列 第 17

DAY17-JAVA的繼承(4)

getClass()
想知道某個物件屬於哪個類別時,可用

obj.getClass() //取得變數obj所指向之物件所屬類別

因為getClass()是Object類別裡所定義的函數,而Object類別是所有類別的父類別,所以在任何類別裡均可呼叫這個因繼承而來的函數。
getClass()的傳回值是Class型態,所以必須先宣告一個Class型態的變數來接收他。

equals()
equals()函數可用來比較兩個類別變數是否指向同一個物件。,如果是,則回傳true;否則回傳false。
所有類別都是Object類別的子類別,因此即使沒有定義,依然可以使用equals()函數。

toString()
toString()的功用是將物件的內容轉換成字串,並回傳轉換後的結果。

a.toString() //傳回代表此物件a的字串

一般toString()因為回傳值的字串不太有意義,因此會被改寫。

class Test{
    ...
    public String toString(){  //改寫toString()函數
        String str = "toString() called, num="+num;
        return str;
    }
    public class lala{
        public static void main(String args[]){
            Test a = new Test(2);
            System.out.println(a.toString());  //印出物件a的內容
        }
     }
}

改寫過後,可印出資料成員num的值,此外,在使用上也更加方便。

菜鳥工程師的體脂肪

菜鳥工程師也有分享食記,歡迎大家追蹤喔~~
https://instagram.com/engineer_bodyfat?utm_medium=copy_link

今天在家吃中秋大餐,吃到差點忘記寫文XDD
大家做好準備!!!
明天要進入抽象類別嚕~~
See U tomorrow:))


上一篇
DAY16-JAVA的繼承(3)
下一篇
DAY18-JAVA的抽象類別(1)
系列文
菜雞的JAVA日記30

尚未有邦友留言

立即登入留言