public static void main(String[] args) {Runtime:
String str1 = new String(), str2 = new String();
System.out.println(str1.getClass().getName());
System.out.println(str2.getClass().getName());
if(str1.getClass().equals(str2.getClass())){
System.out.println("str1 und str2 sind Instanzen derselben Klasse");
}else{
System.out.println("str1 und str2 sind Instanzen verschiedener Klassen");
}
Integer A = new Integer(1);
Boolescher Wert B = neuer Boolescher Wert(wahr);
System.out.println(A.getClass().getName());
System.out.println(B.getClass().getName());
if(A.getClass().equals( B.getClass())){
System.out.println("A und B sind Instanzen derselben Klasse");
}else{
System.out.println("A und B sind Instanzen verschiedener Klassen");
}
}
java.lang.StringWir benötigen die Methoden newInstance() und forName() da wir manchmal den Namen der instanziierten Klasse zur Laufzeit nicht kennen können, so dass diese Methoden die Dinge für uns einfacher machen.
java.lang.String
str1 und str2 sind Instanzen derselben Klasse
java.lang.Integer
java.lang.Boolean
A und B sind Instanzen verschiedener Klassen
try {Laufzeit:
/*newInstance() äquivalent zu new String()*/
String str2 = str1.getClass().newInstance();
System.out.println(str2.getClass().getName());
System.out.println(str2.getClass().getSimpleName());
System.out.println(str2.getClass().getCanonicalName());
} catch (InstantiationException e) {
// TODO Automatisch generierter catch-Block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Automatisch generierter catch-Block
e.printStackTrace();
}
java.lang.StringEs gibt andere Methoden, um den Typ der Klasse zu testen:
String
java.lang.String
String str1 = new String();
String[] array = {"aa","bb","cc"};
String[] array2 = {"fd","be","ce"};
System.out.println(array.getClass().isArray()); true
System.out.println(array.getClass().isInstance(array2)); true
System.out.println(array.getClass().isLocalClass()); false
java.lang.Class button = Class.class.forName("javax.swing.JButton");Das Ausführen dieses Codes führt zu einer langen Liste von Methoden der java.lang.String, also zeigen wir nur die Liste der Konstruktoren und Schnittstellen an:
System.out.println("Konstruktoren von "+button.getClass());
Konstrukteur > [] c = button.getClass().getConstructors();
for(int i=0; Ich< c. Länge; i++)
System.out.println(c[i]);
System.out.println("Schnittstellen von "+button.getClass());
java.lang.Class > [] Schnittstellen = button.getClass().getInterfaces();
for(int i=0; Ich< interfaces.length; i++)
System.out.println(interfaces[i]);
System.out.println("Methoden von "+button.getClass());
Method[] m = button.getClass().getMethods();
for(int i=0; Ich< m.Länge; i++)
System.out.println(m[i]);
javax.swing.JButtonReferences:
javax.swing.JButton
interface java.io.Serializable
interface java.lang.reflect.GenericDeclaration
interface java.lang.reflect.Type
interface java.lang.reflect.AnnotatedElement
< br />Class Methoden javax.swing.JButton
public static java.lang.Class java.lang.Class.forName(java.lang.String,boolean,java.lang.ClassLoader) wirft java.lang.ClassNotFoundException
public static java.lang.Class java.lang.Class.forName(java.lang.String) wirft java.lang.ClassNotFoundException
public native boolean java.lang.Class.isAssignableFrom(java.lang.Class)
public native java.lang.Class java.lang.Class.getSuperclass()
public native java.lang.Class java.lang.Class.getComponentType()
public java.lang.String java.lang.Class.toString()
public native boolean java.lang.Class.isInstance(java.lang.Object)
public native int java.lang.Class.getModifiers()
public native boolean java.lang.Class.isInterface()
public native boolean java.lang.Class.isArray()
public native boolean java.lang.Class.isPrimitive()
public java.lang.String java.lang.Class.getName()
public java.lang.Class java.lang.Class.asSubclass(java.lang.Class)
public java.lang.Object java.lang.Class.cast(java.lang.Object)
public java.lang.Class[] java.lang.Class.getClasses()
public java.lang.reflect.Field java.lang.Class.getField(java.lang.String) wirft java.lang.NoSuchFieldException,java.lang.SecurityException
public java.lang.reflect.Field[] java.lang.Class.getFields() wirft java.lang.SecurityException
public java.lang.reflect.Method java.lang.Class.getMethod(java.lang.String,java.lang.Class[]) wirft java.lang.NoSuchMethodException,java.lang.SecurityException
public java.lang.reflect.Method[] java.lang.Class.getMethods() wirft java.lang.SecurityException
public java.lang.Package java.lang.Class.getPackage()
public java.net.URL java.lang.Class.getResource(java.lang.String)
public native java.lang.Object[] java.lang.Class.getSigners()
public boolean java.lang.Class.isAnnotation()
public boolean java.lang.Class.isEnum()
public boolean java.lang.Class.isLocalClass()
public boolean java.lang.Class.isSynthetic()
public java.lang.Object.java.lang.Class.newInstance() wirft java.lang.InstantiationException, java.lang.IllegalAccessException
public boolean java.lang.Class.desiredAssertionStatus()
public java.lang.annotation.Annotation java.lang.Class.getAnnotation(java.lang.Class)
public java.lang.annotation.Annotation[] java.lang.Class.getAnnotations()
public java.lang.String java.lang.Class.getCanonicalName()
public java.lang.ClassLoader java.lang.Class.getClassLoader()
public java.lang.reflect.Constructor java.lang.Class.getConstructor(java.lang.Class[]) wirft java.lang.NoSuchMethodException,java.lang.SecurityException
public java.lang.reflect.Constructor[] java.lang.Class.getConstructors(] java.lang.Class.getConstructors() wirft java.lang.SecurityException
public java.lang.annotation.Annotation[] java.lang.Class.getDeclaredAnnotations()
public java.lang.Class[] java.lang.Class.getDeclaredClasses() wirft java.lang.SecurityException
public java.lang.reflect.Constructor java.lang.Class.getDeclaredConstructor(java.lang.Class[]) wirft java.lang.NoSuchMethodException,java.lang.SecurityException
public java.lang.reflect.Constructor[] java.lang.Class.getDeclaredConstructors(] java.lang.Class.getDeclaredConstructors() wirft java.lang.SecurityException
public java.lang.reflect.Field java.lang.Class.getDeclaredField(java.lang.String) wirft java.lang.NoSuchFieldException,java.lang.SecurityException
public java.lang.reflect.Field[] java.lang.Class.getDeclaredFields() wirft java.lang.SecurityException
public java.lang.reflect.Method java.lang.Class.getDeclaredMethod(java.lang.String,java.lang.Class[]) wirft java.lang.NoSuchMethodException,java.lang.SecurityException
public java.lang.reflect.Method[] java.lang.Class.getDeclaredMethods() wirft java.lang.SecurityException
public native java.lang.Class java.lang.Class.getDeclaringClass()
public java.lang.Class java.lang.Class.getEnclosingClass()
public java.lang.reflect.Constructor java.lang.Class.getEnclosingConstructor()
public java.lang.reflect.Method java.lang.Class.getEnclosingMethod()
public java.lang.Object[] java.lang.Class.getEnumConstants()
public java.lang.reflect.Type[] java.lang.Class.getGenericInterfaces()
public java.lang.reflect.Type java.lang.Class.getGenericSuperclass()
public native java.lang.Class[] java.lang.Class.getInterfaces()
public java.security.ProtectionDomain java.lang.Class.getProtectionDomain()
public java.io.InputStream java.lang.Class.getResourceAsStream(java.lang.String)
public java.lang.String java.lang.Class.getSimpleName()
public java.lang.reflect.TypeVariable[] java.lang.Class.getTypeParameters()
public boolean java.lang.Class.isAnnotationPresent(java.lang.Class)
public boolean java.lang.Class.isAnonymousClass()
public boolean java.lang.Class.isMemberClass()
public final void java.lang.Object.wait(long,int) wirft java.lang.InterruptedException
public final native void java.lang.Object.wait(long) wirft java.lang.InterruptedException
public final void java.lang.Object.wait() java.lang.InterruptedException
public boolean java.lang.Object.equals(java.lang.Object)
public native int java.lang.Object.hashCode()
public final native java.lang.Class java.lang.Object.getClass()
public final native void java.lang.Object.notify()
public final native void java.lang.Object.notifyAll()
Please disable your ad blocker and refresh the window to use this website.