在此示例中,我们将学习使用getClass()方法,instanceof运算符 和 isInstance()方法确定Java中对象的类。
要理解此示例,您应该了解以下Java编程主题:
class Test1 {
// first class
}
class Test2 {
// second class
}
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()方法来获取对象obj1和obj2的类名称。
要了解更多信息,请访问Java Object getClass()。
class Test {
// class
}
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的实例。
class Test {
// first class
}
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类的对象
在这里,我们使用了Class类的isInstance()方法来检查对象obj是否为Test类的对象。
isInstance()方法的工作原理与instanceof运算符类似。但是,最好在运行时使用。