Contents

7.3. Object类

在java中,所有的类都直接或间接继承java.lang.Object类,Object类时比较特殊的类,它是 所有类的父类,是Java类层中的最高层类。

所有类都是Object子类,所以在定义类时,省略了extends Object关键字。

常用的方法为equals()和toString()方法。

  1. getClass()方法是Object类定义的方法,它会返回对象执行时的Class实例,然后使用此实例调用 getName()方法可以取得类的名称。

    语法如下: getClass().getname():

可以将getClass()方法和toString()方法联合使用。

2.toString()方法 toString()方法的功能是将一个对象返回为字符串形式,它会返回一个String实例。 为对象提供一个特定的输出模式。当这个类转换为字符串或与字符串连接时,将自动调用重写toString()方法。

eg

public class ObjectInstance {
    public String toString() {
        return "在"+getClass().getName() + "类中重写toString()方法";
    }
    public static void main(String[] args) {
//      主方法
        System.out.println(new ObjectInstance());
    }

}

/*

在ObjectInstance类中重写toString()方法
*/
  1. eqyals()方法 “==”运算与equals()方法,“==”比较的是两个对象的引用是否相等,而equals()方法是比较两个对象的实际内容。

eg

//自定义类V
class V {
}

public class OverWriteEquals {
//  主方法
    public static void main(String[] args) {
//      实例化两个对象,内容相同
        String s1 = "123";
        String s2 = "123";
        System.out.println(s1.equals(s2));  //使用equals()方法调用
//      实例化两个V类对象
        V v1 = new V();
        V v2 = new V();
//      使用equals()方法比较v1与v2对象

        System.out.println(v1.equals(v2));
    }
}

/*
 *
true
false
 */