![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| MatrixMaster |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 24.10.2003 Репутация: нет Всего: нет |
дано: имена пакетов, классов, методов.
Надо: подключить данные классы данных пакетов, и вызвать (выполнить) данный метод. Как это сделать.. eval'а - то нет |
|||
|
||||
| Sun |
|
|||
|
Account removed ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1611 Регистрация: 14.8.2002 Репутация: 8 Всего: 48 |
А нельзя ли поподробней? Насколько я понял, нужно организовать выполнение методов классов на лету, указав имя класса и имя метода?
Если так, то существует класс java.lang.Class, который может вернуть экземпляр класса указав имя класса и пакет. Есть также возможность извлечь метод (invoke) нужного класса. Этот механизм чем-то похож на работу с Dll. При помощи Classloader загружается класс, вызывается конструктор а затем извлекаются и запускаются методы. -------------------- Account removed |
|||
|
||||
| DarkDS |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 748 Регистрация: 6.5.2003 Где: Таллинн, Эстония Репутация: 11 Всего: 16 |
Если пакет и классы уже есть класспасе, то делается все просто:
|
|||
|
||||
| MatrixMaster |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 24.10.2003 Репутация: нет Всего: нет |
Sun ага. верно ты понял.
DarkDS спасибо! |
|||
|
||||
| MatrixMaster |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 24.10.2003 Репутация: нет Всего: нет |
вот вопросец возник в ходе реализации.
как определить нужный нам метод, ежели мы знаем его имя, но не знаем в какой последовательности требуется задавать список параметров. поясню. что бы использовать метод getMethod нужно знать
равно как и
в принципе список можно получить используя getParameterTypes() класса Method, но ведь у нас ЕЩЕ нет объекта типа Method, что бы вызвать этот getParameterTypes().. |
||||
|
|||||
| DarkDS |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 748 Регистрация: 6.5.2003 Где: Таллинн, Эстония Репутация: 11 Всего: 16 |
Можно получить список всех методов у класса и проверять их имена... .getMethods(). возращает Method[]
Но... Тут может возникнуть проблемма с заполнением параметров.. Это сообщение отредактировал(а) DarkDS - 27.10.2003, 10:05 |
|||
|
||||
| MatrixMaster |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 24.10.2003 Репутация: нет Всего: нет |
DarkDS жаль. я думал что есть более красивый метод, чем тот, что я реализовал ...
|
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |