跳到主要内容

Java 程序:确定对象的类

要理解这个示例,你应该了解以下 Java 编程 主题:

示例 1:使用 getClass() 检查对象的类

class Test1 {
// 第一个类
}

class Test2 {
// 第二个类
}


class Main {
public static void main(String[] args) {
// 创建对象
Test1 obj1 = new Test1();
Test2 obj2 = new Test2();

// 获取对象 obj1 的类
System.out.print("obj1 的类是: ");
System.out.println(obj1.getClass());

// 获取对象 obj2 的类
System.out.print("obj2 的类是: ");
System.out.println(obj2.getClass());
}
}

输出

obj1 的类是: class Test1
obj2 的类是: class Test2

在上面的示例中,我们使用了 Object 类的 getClass() 方法来获取对象 obj1obj2 的类名。

要了解更多,请访问 Java Object getClass()

示例 2:使用 instanceof 运算符检查对象的类

class Test {
// 类
}

class Main {
public static void main(String[] args) {
// 创建一个对象
Test obj = new Test();

// 检查 obj 是否是 Test 的对象
if(obj instanceof Test) {
System.out.println("obj 是 Test 类的对象");
}
else {
System.out.println("obj 不是 Test 类的对象");
}
}
}

输出

obj 是 Test 类的对象

在上面的示例中,我们使用了 instanceof 运算符来检查对象 obj 是否是类 Test 的实例。

示例 3:使用 isInstance() 检查对象的类

class Test {
// 第一个类
}



class Main {
public static void main(String[] args) {
// 创建一个对象
Test obj = new Test();

// 检查 obj 是否是 Test1 的对象
if(Test.class.isInstance(obj)){
System.out.println("obj 是 Test 类的对象");
}
else {
System.out.println("obj 不是 Test 类的对象");
}
}
}

输出

obj 是 Test 类的对象

在这里,我们使用了类 ClassisInstance() 方法来检查对象 obj 是否是类 Test 的对象。

isInstance() 方法的工作方式类似于 instanceof 运算符。然而,它在运行时更受欢迎。