如何测试对象是否是 Java AWT 组件?
How to test if a Object is a Java AWT component?
我有一个方法可以接收包含 类 列表的字符串数组。我必须检查哪个是 Java AWT 组件和 return 包含这些组件实例的列表。但是我一直在测试对象是否是 java Awt 组件。你能帮我么 !谢谢
编辑:谢谢!它适用于 .isAsignableFrom() 方法。我知道 instanceof 运算符,但没想到它会起作用。!
如果您有对象,那么您可以使用 getClass method:
获取 class 名称
Returns the runtime class of this Object. The returned Class object is
the object that is locked by static synchronized methods of the
represented class.
如果必须检查指定的 class 之类的组件,另一个选项是使用 instanceof 运算符。如果要检查对象是否属于特定类型,可以使用 instanceof
运算符。
如果您想检查 class 层次结构 而不先创建实例:
Class<?> clazz = Class.forName(className); // errors out for bad name
if (Component.class.isAssignableFrom(clazz)){
// ...
}
我有一个方法可以接收包含 类 列表的字符串数组。我必须检查哪个是 Java AWT 组件和 return 包含这些组件实例的列表。但是我一直在测试对象是否是 java Awt 组件。你能帮我么 !谢谢
编辑:谢谢!它适用于 .isAsignableFrom() 方法。我知道 instanceof 运算符,但没想到它会起作用。!
如果您有对象,那么您可以使用 getClass method:
获取 class 名称Returns the runtime class of this Object. The returned Class object is the object that is locked by static synchronized methods of the represented class.
如果必须检查指定的 class 之类的组件,另一个选项是使用 instanceof 运算符。如果要检查对象是否属于特定类型,可以使用 instanceof
运算符。
如果您想检查 class 层次结构 而不先创建实例:
Class<?> clazz = Class.forName(className); // errors out for bad name
if (Component.class.isAssignableFrom(clazz)){
// ...
}