java_object的簡略應用詳解。本站提示廣大學習愛好者:(java_object的簡略應用詳解)文章只能為提供參考,不一定能成為您想要的結果。以下是java_object的簡略應用詳解正文
就我們所曉得的,java中有子類和父類,子類因為繼續父類而構成,那末父類還有無父類呢?謎底是有了,父類的父類就是object類,一切父類都繼續了它,那末依據繼續的屬性,每個子類都有一個object類,但是,我們不是蒙目地去繼續它,繼續它是有目標的,我們要應用外面界說的辦法,object外面界說了許多辦法,概況參考API贊助文檔,上面我引見object外面兩種辦法,繼續而來的辦法常常是須要我們重寫的。
第1、好比外面的比擬辦法,用來比擬兩個對象的地址能否相等,現實比擬地址是哈希地址,而這開辟中是常常用不到的,我們更多的用到的是比擬對象外面的內容,好比數據成員能否雷同,因為是繼續了object,我們可以將它重寫,把原定object的辦法籠罩失落,普通都如許做,上面,看詳細代碼。個中還觸及到向上轉型,向下轉型的常識,詳細看我之前的播客。還有tostring()辦法是前往類名+哈希值
/*
Object:是一切對象的直接後者直接父類,傳說中的天主。
該類中界說的確定是一切對象都具有的功效。
Object類中曾經供給了對對象能否雷同的比擬辦法。
假如自界說類中也有比擬雷同的功效,沒有需要從新界說。
只需因循父類中的功效,樹立本身特有比擬內容便可。這就是籠罩。
*/
class Demo //extends Object
{
private int num;
Demo(int num)
{
this.num = num;
}
public boolean equals(Object obj)//Object obj = new Demo();
{
if(!(obj instanceof Demo))
return false;
Demo d = (Demo)obj;
return this.num == d.num;
}
/*
public boolean compare(Demo d)
{
return this.num==d.num;
}
*/
public String toString()
{
return "demo:"+num;
}
}
class Person
{
}
class ObjectDemo
{
public static void main(String[] args)
{
Demo d1 = new Demo(4);
System.out.println(d1);//輸入語句打印對象時,會主動挪用對象的toString辦法。打印對象的字符串表示情勢。
Demo d2 = new Demo(7);
System.out.println(d2.toString());
//Demo d2 = new Demo(5);
//Class c = d1.getClass();
//
// System.out.println(c.getName());
// System.out.println(c.getName()+"@@"+Integer.toHexString(d1.hashCode()));
// System.out.println(d1.toString());
//Person p = new Person();
///System.out.println(d1.equals(p));
}
}
以上這篇java_object的簡略應用詳解就是小編分享給年夜家的全體內容了,願望能給年夜家一個參考,也願望年夜家多多支撐。