#java
#java
Вопрос:
Я разработал простое консольное приложение для инвентаризации транспортных средств .. в этом приложении есть
one vehicle.java --> its a abstract base class
-->that contain some common attribute for vehicle (get/set)
one car.java--->it extends vehicle.java
--->that contain some car specific attribute
one bike.java--->it extends vehicle.java
--->that contain some bike specific attirbute
and one common class that contain some functions like getMaxSpeedOfVehicle, getAverageSpeed(), etc.....
Это базовая структура моего приложения.
Теперь я хочу использовать reflection API,
Итак, как я могу реализовать отражение в моем приложении
Что я должен учитывать при использовании этого отражения ……?
Комментарии:
1. для чего вы хотите использовать отражение?
2. Как вы понимаете отражение?
3. Похоже, я потерял свои способности ясновидения, поэтому, боюсь, вам придется рассказать нам, что именно вы хотите сделать. Отражения можно использовать для многих разных целей.
4. Вы никак не указали, для чего хотите использовать отражение. Если у вас нет необходимости в отражении, то не используйте его. В противном случае, пожалуйста, укажите, чего вы пытаетесь достичь с помощью своего приложения и как отражение вписывается в общую картину.
5. Судя по тому, как вы структурировали свой «вопрос», похоже, вам нужен полиморфизм.
Ответ №1:
Попробуйте это:
import java.lang.reflect.*;
public class ReflectionTeste {
public static void main(String args[]) {
try {
Class c = Class.forName( "java.lang.String" );
Method m[] = c.getDeclaredMethods();
for (int i = 0; i < m.length; i ) {
Object retobj = meth.invoke(m, arglist);
System.out.println( m[i].toString() );
}
} catch (Throwable e) {
System.err.println(e);
}
}
}