
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
07.02.2013, 15:02:42
|
|||
|---|---|---|---|
Static abstract method |
|||
|
#18+
Добрый день! Помогите реализовать алгоритм. Имеется абстрактный класс "Телефон" и куча наследников от данного класса - "ТелефонSamsumg", "ТелефонHTC" и т.д. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. У базового класса "Телефон" должен быть абстрактный статический метод isMe – который определяет запущен ли объект на конкретном телефоне или нет. Но в Java запрещено иметь абстрактные статические методы – поэтому данный метод исключен из базового класса и добавлен в каждый потомок в качестве статического. Имеется Фабрика "phoneFactory" которая должна возвращать объект наследник класса "Телефон", в зависимости от телефона, на котором запущена программа. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Я вынужден использовать рефлексию. Мне это не очень нравиться. Прошу обсудить мое решение и если можете, предложите свое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.02.2013, 15:23:16
|
|||
|---|---|---|---|
|
|||
Static abstract method |
|||
|
#18+
Почему метод isME должен быть статическим? Замените статику синглтоном и ООП вернется на место. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.02.2013, 15:31:09
|
|||
|---|---|---|---|
Static abstract method |
|||
|
#18+
Blazkowicz Я предполагаю, что каждый класс наследник "Телефон" должен обладать "самоидентификацией" авторЗамените статику синглтоном и ООП вернется на место. А это как? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.02.2013, 15:50:34
|
|||
|---|---|---|---|
|
|||
Static abstract method |
|||
|
#18+
Что-то типа такого. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Можно ещё генериков добавить по вкусу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.02.2013, 16:08:15
|
|||
|---|---|---|---|
Static abstract method |
|||
|
#18+
и соотв, isMe будет в PhoneFactory ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.02.2013, 16:14:32
|
|||
|---|---|---|---|
Static abstract method |
|||
|
#18+
Lisichkin, Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.02.2013, 16:37:55
|
|||
|---|---|---|---|
Static abstract method |
|||
|
#18+
Т.е. в такой реализации не класс занимается "самоидентификацией" а фабрика... Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. Что -то мне не удается скомпилировать :(( ОШИБКА: Cannot cast from Class to phoneFactory ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.02.2013, 16:46:18
|
|||
|---|---|---|---|
Static abstract method |
|||
|
#18+
Lisichkin, фабрики - экземпляры Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&mobile=1&tid=2130022]: |
0ms |
get settings: |
16ms |
get forum list: |
29ms |
check forum access: |
8ms |
check topic access: |
8ms |
track hit: |
321ms |
get topic data: |
20ms |
get forum data: |
5ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 301ms |
| total: | 766ms |

| 0 / 0 |
