Class
objects represent interfaces as well as classes. If you aren't sure whether a Class
object represents an interface or a class, call the isInterface
method.You invoke
Class
methods to get information about an interface. To find the public constants of an interface, invoke the getFields
method upon the Class
object that represents the interface. The section Identifying Class Fields has an example containing getFields
. You can use getMethods
to get information about an interface's methods. See Obtaining Method Information. To find out about an interface's modifiers, invoke the getModifiers
method. See Discovering Class Modifiers for an example. By calling
isInterface
, the following program reveals that Observer
is an interface and that Observable
is a class: The output of the preceding program is:import java.lang.reflect.*;
import java.util.*;
class SampleCheckInterface {
public static void main(String[] args) {
Class observer = Observer.class;
Class observable = Observable.class;
verifyInterface(observer);
verifyInterface(observable);
}
static void verifyInterface(Class c) {
String name = c.getName();
if (c.isInterface()) {
System.out.println(name + " is an interface.");
} else {
System.out.println(name + " is a class.");
}
}
}
java.util.Observer is an interface.
java.util.Observable is a class.
No comments:
Post a Comment