java_object的簡單使用詳解
就我們所知道的,java中有子類和父類,子類由于繼承父類而形成,那么父類還有沒有父類呢?答案是有了,父類的父類就是object類,一切父類都繼承了它,那么根據(jù)繼承的屬性,每一個(gè)子類都有一個(gè)object類,然而,我們不是蒙目地去繼承它,繼承它是有目的的,我們要使用里面定義的方法,object里面定義了很多方法,詳情參考API幫助文檔,下面我介紹object里面兩種方法,繼承而來的方法往往是需要我們重寫的。
第一、比如里面的比較方法,用來比較兩個(gè)對象的地址是否相等,實(shí)際比較地址是哈希地址,而這開發(fā)中是往往用不到的,我們更多的用到的是比較對象里面的內(nèi)容,比如數(shù)據(jù)成員是否相同,由于是繼承了object,我們可以將它重寫,把原定object的方法覆蓋掉,一般都這樣做,下面,看具體代碼。其中還涉及到向上轉(zhuǎn)型,向下轉(zhuǎn)型的知識,具體看我以前的播客。還有tostring()方法是返回類名+哈希值
/*
Object:是所有對象的直接后者間接父類,傳說中的上帝。
該類中定義的肯定是所有對象都具備的功能。
Object類中已經(jīng)提供了對對象是否相同的比較方法。
如果自定義類中也有比較相同的功能,沒有必要重新定義。
只要沿襲父類中的功能,建立自己特有比較內(nèi)容即可。這就是覆蓋。
*/
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);//輸出語句打印對象時(shí),會(huì)自動(dòng)調(diào)用對象的toString方法。打印對象的字符串表現(xiàn)形式。
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的簡單使用詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Idea 搭建Spring源碼環(huán)境的超詳細(xì)教程
這篇文章主要介紹了Idea 搭建Spring源碼環(huán)境,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10
java 出現(xiàn)Zipexception 異常的解決辦法
這篇文章主要介紹了java 出現(xiàn)Zipexception 異常的解決辦法的相關(guān)資料,出現(xiàn) java.util.zip.ZipException: error in opening zip file 異常的原因及解決方法,需要的朋友可以參考下2017-08-08
解決idea報(bào)錯(cuò) Connot resolve column 的問題
這篇文章主要介紹了解決idea報(bào)錯(cuò) Connot resolve column 的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-02-02

