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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> потомки второго уровня от JFrame не работают? 
:(
    Опции темы
slava_f
  Дата 4.5.2008, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 5.3.2008

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



возможно ли как-то решить такую проблему?:

есть несколько окон, которые практически идентичны, но каждое содержит таблицу с разным числом строк и разными данными...

я сделал Frame0 (потомка JFrame с общими методами для всех), а также несколько разных классов Frame1, 2 и др. (потомки Frame0), но так не работает! т.е. как я понял, потомки второго уровня от JFrame уже не работают... по крайней мере при обработке событий из-за этого постоянно ошибки

что посоветуете?
PM MAIL   Вверх
v2v
Дата 4.5.2008, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1620
Регистрация: 20.9.2006
Где: Киев

Репутация: нет
Всего: 56



Цитата(slava_f @  4.5.2008,  19:16 Найти цитируемый пост)

что посоветуете? 

уточнить что не получается сделать и какие ошибки.


--------------------
PM   Вверх
niasilil
Дата 4.5.2008, 19:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 4.6.2007
Где: USA

Репутация: 1
Всего: 9



Я очень сильно удивлюсь если это так с потомками второго уровня. 


--------------------
SCJP 5.0, SCJD
PM MAIL   Вверх
slava_f
Дата 5.5.2008, 10:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 5.3.2008

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



Цитата(niasilil @ 4.5.2008,  19:42)
Я очень сильно удивлюсь если это так с потомками второго уровня.

слелал окошки прямыми потоомками JFrame, все работает!!!

просто получается дублирование одиних и тех же элеметнов и их функций... придется так

Добавлено @ 10:30
можно ли эти "одинаковости" без наследования как-то включить в классы?!

Это сообщение отредактировал(а) slava_f - 5.5.2008, 10:31
PM MAIL   Вверх
ivg
Дата 5.5.2008, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Autonomous R&D
**


Профиль
Группа: Участник
Сообщений: 686
Регистрация: 8.2.2006
Где: Екатеринбург

Репутация: 4
Всего: 81



slava_f, проблема не в наследовании. Показывайте код, а иначе никто вам помочь не сможет.
PM MAIL   Вверх
niasilil
Дата 5.5.2008, 23:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 4.6.2007
Где: USA

Репутация: 1
Всего: 9



Цитата(slava_f @ 5.5.2008,  10:29)
Цитата(niasilil @ 4.5.2008,  19:42)
Я очень сильно удивлюсь если это так с потомками второго уровня.

слелал окошки прямыми потоомками JFrame, все работает!!!

просто получается дублирование одиних и тех же элеметнов и их функций... придется так

Добавлено @ 10:30
можно ли эти "одинаковости" без наследования как-то включить в классы?!

Действительно, сложно гадать. По большому счету, наследование ради code reuse не очень хорошо делать, это один из так называемых bad smells. 


--------------------
SCJP 5.0, SCJD
PM MAIL   Вверх
Vurn
Дата 8.5.2008, 05:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 24.5.2007

Репутация: нет
Всего: 3



Шизануться. А не проще было создать 1 (один) класс, который от переданных параметров конструктору сам себя настраивал на "таблицу с разным числом строк и разными данными..."?

Запомните простое правило, которое не раз поможет в будущем - класс наследуется ровно в двух случаях а) надо исправить поведение родителя б) и/или при этом надо уметь передавать его по родительским ссылкам. Во всех остальных случаях надо использовать аггрегатирование.

Frame0 переписывает поведение родителя? Нет. Frame0 надо передавать в методы по родительским ссылкам? Нет. Значит он не должен наследоваться от JFrame. А должен иметь внутри ссылку на JFrame.
По типу такого:
Код

class Frame0 {
    JFrame jf;
    // ....
}


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

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

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


 




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


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

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