Object是所有类的父类,是类层次结构的根类,所有对象(包括数组)都实现了这个类的方法,所有的对象都会直接或间接的继承自Object类。
(推荐教程:java入门教程)
Object的常用方法:
1、getClass()方法:返回对象执行时的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,则会默认调用toString()方法:
for(Object obj: arr){ System.out.println(obj); }
3、equals()方法:比较两个对象是否相等
equals方法默认比较的是两个对象的地址是否相等(底层是用==比较的),一般都会自定义的重写equals方法来进行比较。