面向物件程式設計----繼承_Object類用法_toString和equals方法_重寫toString
阿新 • • 發佈:2022-05-26
Object類
Object類是所有java類的根基類
如果在類的宣告中未使用extends關鍵字指明其基類,則預設基類為Object類。
Public class Person{
...
}
Public class Person extends Object{
...
}
重寫:toString方法:
預設返回:包名+類名+@+雜湊碼(根據物件記憶體位置生成,唯一不重複!)
可以重用! 根據物件記憶體位置生成,唯一不重複!
開啟API文件,開始熟悉!
Objext如果想看原始碼的話,滑鼠放上去ctrl+點選
慢慢的學著,看原始碼
關於檢視寄存結構的小技巧:
指標放到這個類上按住 ctrl+t 這樣就可以看到型別層次結構。
也可以指標放到這個類上點選右鍵,然後選擇Open Type Hierarchy
方法的重寫(override)
在子類中可以根據需要對從基類中繼承來的方法進行重寫。
重寫方法必須和被重寫方法具有相同方法名稱、引數列表和返回型別。
重寫方法不能使用比被重寫方法更嚴格的訪問許可權。(由於多型)
package cn.bjsct.oop.testObject;
public class TestObject {
public static void main(String[] args) {
// 類物件是類層次結構的根,
// 每個類都有一個作為超類的物件。
// 所有物件,包括陣列,實現這個類的方法。
Object obj = new Object();
Object obj2 = new Object();
// toString()預設返回:包名+類名+@+雜湊碼(根據物件記憶體位置生成,唯一不重複)
System.out.println(obj.toString());
System.out.println(obj2.toString());
System.out.println(obj==obj2);
// 講到容器再說
System.out.println(obj.equals(obj2));
Moble m = new Moble();
System.out.println(m.toString());
}
}
package cn.bjsct.oop.testObject;
public class Moble {
// 在這裡把toString()方法給重寫了
public String toString() {
return "我是一部電話";
}
}