![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Karadul |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.5.2006 Репутация: 0 Всего: 1 |
Как получить в яве ссылку на класс и потом вызвать через нее конструктор класса? Т.е.
|
|||
|
||||
jk1 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1168 Регистрация: 17.10.2008 Где: Санкт-Петербург Репутация: 40 Всего: 75 |
-------------------- Opinions are like assholes — everybody has one |
|||
|
||||
Karadul |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.5.2006 Репутация: 0 Всего: 1 |
А как передать параметры конструктору?
|
|||
|
||||
jk1 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1168 Регистрация: 17.10.2008 Где: Санкт-Петербург Репутация: 40 Всего: 75 |
-------------------- Opinions are like assholes — everybody has one |
|||
|
||||
Karadul |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.5.2006 Репутация: 0 Всего: 1 |
Зачем мне все это нужно:
Читается в цикле serversocket, принимается соединение и создается обьект с ссылкой на хендлер уже клиентского сокета в качестве параметра. Так пойдет, или можно что-то лучше придумать?
То, что ты дал конечно работает, но все прелести статического языка пропадают, при изменении числа параметров придется вручную править код. Это сообщение отредактировал(а) Karadul - 18.2.2012, 14:17 |
|||
|
||||
Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 8 Всего: 191 |
||||
|
||||
Karadul |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.5.2006 Репутация: 0 Всего: 1 |
Samotnik, зачем удалил-то?
Пример можно? Это сообщение отредактировал(а) Karadul - 18.2.2012, 14:20 |
|||
|
||||
Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 8 Всего: 191 |
Karadul, ты же сказал не то )
Добавлено через 33 секунды Если четсно не очень понятно что нужно. Рефлексия или традиционный вызов? |
|||
|
||||
Karadul |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.5.2006 Репутация: 0 Всего: 1 |
Плохо понимаю, что есть что в яве. Так, как я представляю, мне нужно сохранить класс в переменной (что в питоне имхо пройдет без проблем) и потом вызвать его конструктор с параметрами. Пример в оппосте. Это сообщение отредактировал(а) Karadul - 18.2.2012, 14:25 |
|||
|
||||
Samotnik |
|
||||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 8 Всего: 191 |
Я тоже плохо понимаю, что тебе нужно
![]() Может как то так?
Добавлено через 1 минуту и 22 секунды По крайней мере этот код удовлетворяет условию:
![]() |
||||
|
|||||
jk1 |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1168 Регистрация: 17.10.2008 Где: Санкт-Петербург Репутация: 40 Всего: 75 |
Karadul, а что мешает в рантайме определять? обобщение же элементарное
-------------------- Opinions are like assholes — everybody has one |
||||
|
|||||
Karadul |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.5.2006 Репутация: 0 Всего: 1 |
Не так. Пример смотри в оппосте. Еще точнее наверно так:
jk1, у тебя params прописаны отдельно. Что произойдет, елси я поменяю сигнатуру конструктора? |
|||
|
||||
jk1 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1168 Регистрация: 17.10.2008 Где: Санкт-Петербург Репутация: 40 Всего: 75 |
Тогда и params должны поменяться. Скажите мне вот что: откуда Вы хотите брать реальные значения параметров для передачи конструктору с неизвестной сигнатурой? Они будут приходить по сети? Ну так и снимите с них в рантайме реальные типы, как я снял их со статического массива -------------------- Opinions are like assholes — everybody has one |
|||
|
||||
Karadul |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.5.2006 Репутация: 0 Всего: 1 |
Типы значений - из сигнатуры, реальные значения - из new Thread(new socketHandler(sock)) в примере выше, т.е. из кода. Если они друг другу перестанут соотвествовать, что произойдет?
Это сообщение отредактировал(а) Karadul - 18.2.2012, 15:15 |
|||
|
||||
jk1 |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1168 Регистрация: 17.10.2008 Где: Санкт-Петербург Репутация: 40 Всего: 75 |
Вылетит исключение
-------------------- Opinions are like assholes — everybody has one |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "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. |