すべてのクラスには、Object クラスから継承されたメソッドがあります。
以下のコードは、SomeClass のすべてのパブリック変数とメソッドを繰り返し処理し、それらを出力します。
出力から、someVariable と someMethod() が私たちのクラスに属し、他のすべてが Object クラスに属していることがわかります。
import java.lang.reflect.Field;
import java.lang.reflect.Method;
public class Test
{
public static void main( String args[] )
{
for ( Field field : SomeClass.class.getFields() )
{
System.out.println( field );
}
for ( Method method : SomeClass.class.getMethods() )
{
System.out.println( method );
}
}
class SomeClass
{
public String someVariable;
public void someMethod()
{
}
}
}
出力:
public java.lang.String com.Test$SomeClass.someVariable
public void com.mailings.classes.Test$SomeClass.someMethod()
public final void java.lang.Object.wait() throws java.lang.InterruptedException
public final void java.lang.Object.wait(long,int) throws java.lang.InterruptedException
public final native void java.lang.Object.wait(long) throws java.lang.InterruptedException
public native int java.lang.Object.hashCode()
public final native java.lang.Class java.lang.Object.getClass()
public boolean java.lang.Object.equals(java.lang.Object)
public java.lang.String java.lang.Object.toString()
public final native void java.lang.Object.notify()
public final native void java.lang.Object.notifyAll()