1. 程式人生 > 其它 >面向物件程式設計----繼承_Object類用法_toString和equals方法_重寫toString

面向物件程式設計----繼承_Object類用法_toString和equals方法_重寫toString

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 "我是一部電話";
  }
}