Object是所有類的父類,是類層次結(jié)構(gòu)的根類,所有對象(包括數(shù)組)都實現(xiàn)了這個類的方法,所有的對象都會直接或間接的繼承自O(shè)bject類。
(推薦教程:java入門教程)
Object的常用方法:
1、getClass()方法:返回對象執(zhí)行時的class實例
public class Demo{ public static void main(String[] args){ Object[] arr = new Object[4]; arr[0] = new Object(); arr[1] = new String("字符串"); arr[2] = new Integer(10); arr[3] = new Demo(); for(Object obj: arr){ System.out.println(obj.getClass()); } } }
輸出:
class java.lang.Object class java.lang.String class java.lang.Integer class Demo
2、toString()方法:將對象返回為字符串形式(如果子類不重寫toString方法則會返回類名@16進制的Hash值)
public class Demo{ public static void main(String[] args){ Object[] arr = new Object[4]; arr[0] = new Object(); arr[1] = new String("字符串"); arr[2] = new Integer(10); arr[3] = new Demo(); for(Object obj: arr){ System.out.println(obj.toString()); } } }
輸出:
java lang.Object@1db9742 字符串 10 Demo@10d69c
(視頻教程推薦:java視頻教程)
重寫toString:
@Override public static toString(){ return "我是demo類"; }
輸出:
java lang.Object@1db9742 字符串 10 我是demo類
修改上面代碼可以直接輸出obj,則會默認調(diào)用toString()方法:
for(Object obj: arr){ System.out.println(obj); }
3、equals()方法:比較兩個對象是否相等
equals方法默認比較的是兩個對象的地址是否相等(底層是用==比較的),一般都會自定義的重寫equals方法來進行比較。