Because the Java programming language supports inheritance, an application such as a class browser must be able to identify superclasses. To determine the superclass of a class, you invoke the
The program that follows finds the names of the
getSuperclass
method. This method returns a Class
object representing the superclass, or returns null if the class has no superclass. To identify all ancestors of a class, call getSuperclass
iteratively until it returns null. The program that follows finds the names of the
Button
class's ancestors by calling getSuperclass
iteratively. The output of the sample program verifies that the parent ofimport java.lang.reflect.*;
import java.awt.*;
class SampleSuper {
public static void main(String[] args) {
Button b = new Button();
printSuperclasses(b);
}
static void printSuperclasses(Object o) {
Class subclass = o.getClass();
Class superclass = subclass.getSuperclass();
while (superclass != null) {
String className = superclass.getName();
System.out.println(className);
subclass = superclass;
superclass = subclass.getSuperclass();
}
}
}
Button
is Component
, and that the parent of Component
is Object
: java.awt.Component
java.lang.Object
No comments:
Post a Comment