タイプ識別と反射
1735 ワード
(Run-time Type Identification, RTTI) , , “ ” 。
RTTI Java , , “Class ” , 。 , Class , Class , .class ( : ,Java 。 , Class。)。 , , Java (JVM) Class , ,JVM .class , , Class , 。 RTTI :
1. 。 “(Apple)Fruit”, RTTI , , ClassCastException 。
2. Class 。
Class c = Class.forName(“Apple”);
Object o = c.newInstance();
3. instanceof Class.isInstance() , , instanceof / Class.isInstance() , equals() / == , , 。
, RTTI , , RTTI 。 , RTTI 。
, , “ ”, , (RAD) 。 , , 。 , , 。 GUI , RAD 。 , 。Java JavaBeans 。
, , 。 (RMI), Java , , , 。
Class ,java.lang.reflect Field/Method/Constructor , Member 。 JVM , 。 Constructor , get() set() Field , invoke() Method 。 , getFields()、getMethods()、getConstructors() 、 。 , , 。
,RTTI 。 , RTTI 。