Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.08.2010, 20:30   #11
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию

С рефлексией знаком. Данный код как раз и относится к индусскому коду. Объясню почему.
Код:
class C
{
void other_foo(A base){
((B)base).foo();
}
}
В нем приводится ненужное восходящее, а потом нисходящее преобразование. Вопрос: зачем? Если данный код:
Код:
class C
{
void other_foo(B base){
base.foo();
}
}
дает тот же результат без всяких преобразований. Все равно же не получится вызвать метод из производного класса средством объекта базового если его не будет в базовом.
P.S. Конечно можно средствами рефлексии сделать. Никого не хочу обидеть просто отстаиваю свою точку зрения.

Последний раз редактировалось profi; 28.08.2010 в 21:06.
profi вне форума Ответить с цитированием
Старый 28.08.2010, 21:32   #12
alexinspir
Новичок
Джуниор
 
Аватар для alexinspir
 
Регистрация: 26.08.2008
Сообщений: 1,010
По умолчанию

Код:
	public void disableFreeEdit(Component component){
		if(component instanceof JComboBox){
			(((JComboBox)component)).setEditable(false);
		}else if(component instanceof JTextComponent){
			((JTextComponent)component).setEditable(false);
		}else{
			throw new IllegalArgumentException("This method does not support the "+component.getClass().getName()+" class");
		}
	}
А теперь напишите метод, который будет вырубать свободное редактирование поля без явного кастования, в метод необходимо передавать комбобокс, текстфиелд, текстарею и пасвордфиелд.
ромик0: Cколько получают здешние модераторы?
pu4koff: У модераторов сдельная оплата труда. Выдал предупреждение - плюс к премии. Выдал бан - лучший модератор месяца со всеми вытекающими.

Последний раз редактировалось alexinspir; 28.08.2010 в 22:06.
alexinspir вне форума Ответить с цитированием
Старый 28.08.2010, 22:29   #13
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию

Ну ясный пень никак. Только я не пойму к чему это? Вопрос ТС то читали?
profi вне форума Ответить с цитированием
Старый 28.08.2010, 23:15   #14
alexinspir
Новичок
Джуниор
 
Аватар для alexinspir
 
Регистрация: 26.08.2008
Сообщений: 1,010
По умолчанию

Цитата:
Вопрос ТС то читали?
А вы читали?
Цитата:
А если мы имеем базовый класс, класс наследник, в котором определена некая специфичная для него функция, и некоторый интерфейс, принимающий параметром ссылку на объект базового класса. И мы хотим передавать в этот интерфейс объект класса-наследника и вызывать там эту специфичную функцию.
применительно к коду который я показал:
Component - базовый класс.
JTextField/JComboBox/JTextArea и тп - класс наследник.
SomeClass.disableFreeEdit(Component ) - некоторый интерфейс, принимающий параметром ссылку на объект базового класса.

Цитата:
Только я не пойму к чему это?
первое - вы ввели в заблуждение основателя темы.
второе и главное - вы раскритиковали мой код и назвали его индусским, а следовательно назвали меня индусом, поэтому я вынужден был доказать что это не так.
ромик0: Cколько получают здешние модераторы?
pu4koff: У модераторов сдельная оплата труда. Выдал предупреждение - плюс к премии. Выдал бан - лучший модератор месяца со всеми вытекающими.

Последний раз редактировалось alexinspir; 28.08.2010 в 23:18.
alexinspir вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Приведение типов в Qt mike_tihomirov Qt и кроссплатформенное программирование С/С++ 1 19.06.2010 13:14
Приведение типов... В чем отличия? Gtx541 Общие вопросы C/C++ 1 16.06.2010 19:54
Приведение типов для SQL-запроса Rio309 БД в Delphi 1 06.06.2010 13:39
Cтроки. Приведение типов. char * to float Aerial Общие вопросы C/C++ 3 28.04.2010 14:54
Приведение типов массива объектов Arnezami Общие вопросы .NET 3 17.12.2009 11:30