Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Java. Как получить тип класса в Run-time, Java. Как получить тип класса в Run-time 
:(
    Опции темы
Igorek
Дата 27.10.2002, 15:55 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Как я могу получить тип класса в Run-time для кастинга (и не только)? Пример:

MyClass el1 = new MyClass; //создаю экз. моего класса  
Object objTemp; // root Java Class
objTemp = (MyClass) el1; // назначаю objTemp значение el1. Здесь используем кастинг с явным указанием имени класса (MyClass) в Disign-time

Мой вопрос, какой метод может динамически вернуть тип класса вместо его явного статического указания?

На мой взгяд, это может быглядеть примерно так:

objTemp = (el1.getClass().getComponentType()) el1;

Да вот что-то не работает.
А такие возможности-бы открылись... Должно это быть. Ведь именно так мы можем использовать полиморфизм Java.

Подскажите.
  Вверх
Sun
Дата 28.10.2002, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

Репутация: 8
Всего: 48



Если у тебя все классы происходят от класса Object, то ты можешь получить имя класса вызвав такую конструкцию getClass().getName().
Но это имеет слабое отношение к полиморфизму потому как никто не пишет чтото вроде
Код

switch (className) {
case "Class1":
...
case "Class2":
...
case "Class3":
...
}

Вместо этого используют виртуальные функции (то бишь полиморфные)


--------------------
Account removed
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0488 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.