Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
#1

Задать свои @Override - Программирование Android

09.09.2014, 00:39. Просмотров 437. Ответов 9
Метки нет (Все метки)

Гуру, помогите... Еще один вопрос из серии "лень ради этого читать весь учебник"

Есть 2 класса - родитель и наследник.
Можно ли сделать так, что-бы в наследнике ОБЯЗАТЕЛЬНО были переопределены некоторые методы?
Сейчас сделал в родителе protected, а в наследниках public. Все работает, но...

Наследников у меня ОЧЕНЬ много (и будет еще больше) И некоторые методы ЗАБЫВАЮ вставлять...
А родительские изначально не подходят... Можно ли наследика "обязать" их подменивать? Как это делают интерфейсы? Вроде где-то встречал (возможно наследники вьювов)

Хотя-бы назовите название технологии - нет времени читать учебник на 300 страниц пока не дойдет - "о это именно то что я искал"!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.09.2014, 00:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задать свои @Override (Программирование Android):

@Override problem - Программирование Android
Всем привет! Наблюдаю следующую ошибку! The method onPreExecuted(Void) of type TpActivity.XMLAsyncTask must override or implement...

У кого свои приложения в play market - Программирование Android
Сколько заработали на продажах, опишите подробно.

Свои идентификаторы для элементов ListView - Программирование Android
Как добавить свои идентификаторы в listview для элементов?

Как применять свои шрифты для textView в андроид? - Программирование Android
Запихнул шрифт под именем MainFont в папку assets, и пишу код: TextView text1 = (TextView)...

Свои компоненты в Preferences для выбора времени, даты, числа, цвета - Программирование Android
Гуру, посоветуйте... начал гуглить и везде только "полуфабрикаты"... Надо сделать настройки максимально сложные и максимально...

Как создать массив который сохраняет свои значение даже после закрытия приложения - Программирование Android
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь? Как создать массив который сохраняет свои значение даже после...

9
Netscape
373 / 360 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
09.09.2014, 00:54 #2
Abstract class.
1
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
09.09.2014, 02:16  [ТС] #3
Спасибо, почитаю...
0
glnix
14 / 14 / 5
Регистрация: 08.04.2013
Сообщений: 75
09.09.2014, 08:14 #4
Не совсем уверен, что правильно вас понял, но может быть так?
0
YuraAAA
1576 / 1317 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
09.09.2014, 11:25 #5
Tester64,

Java
1
2
3
4
5
public abstract class Parent {
 
public absract void mustBeOverridedMethod();
 
}
Java
1
2
3
4
5
6
7
8
public class Child extends Parent {
 
@Override
public void mustBeOverridedMethod() {
}
 
 
}
2
Pablito
2477 / 1961 / 611
Регистрация: 12.05.2014
Сообщений: 6,866
Завершенные тесты: 1
09.09.2014, 11:36 #6
Если надо обязательно переопределять методы родителя, то почему бы не делать все через интерфейсы?
Какой смысл писать метод в родителе, что бы потом его обязательно переопределить в наследнике?
0
YuraAAA
1576 / 1317 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
09.09.2014, 11:46 #7
Паблито, это зависит от того, есть ли какая-то реализация в родителе.
Допустим, есть несколько классов-модулей доступа к API. Например,

LoginModule, RegistrationModule, etc.
И у них есть родитель, который делает запрос. Отличается только endpoint. Тогда почему в AbsractModule не сделать абстрактный метод abstract String getUrl(); который будет переопределяться.
1
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
09.09.2014, 17:31  [ТС] #8
Пока не понял как...
Написал свой адаптер. getView остался в родителе "закрытым", но из него вывел 2-5 методов для переназначения.
Если хоть один из них изменил должен изменить и остльные 4е - отдельно "что выводить", "куда выводить", "вывести" и др... Если хоть одно забыл - глобальная ошбка и ищу "ПЕРЕБОРОМ" забытый метод во всех наследниках... А хотелось бы что-бы без этого не компилировалось - выдавало ошибку на упущенных наследниках... Просто замечал что иногда некоторые классы без @Override не работают даже без интерфесов. Но либо не могу вспомнить где именно, либо нет исходников родителя...
Слово abstract НЕ помогло. Ничего похожего пока не нашел.
Можете пример привести?
0
Netscape
373 / 360 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
09.09.2014, 18:11 #9
Цитата Сообщение от Tester64 Посмотреть сообщение
Слово abstract НЕ помогло. Ничего похожего пока не нашел.
Можете пример привести?
Так есть же пример выше.
Абстрактного класса мало, методы которые нужно переопределять в наследниках, должны так же быть абстрактными.
1
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
09.09.2014, 20:41  [ТС] #10
ой! пропустил как-то...
Но код не правильно сработал!
Ругается что у абстрактного метода не должно быть тела. Но без тела не будет работать предок без наследника...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.09.2014, 20:41
Привет! Вот еще темы с ответами:

Как задать свои параметры RTF? - Visual Basic
Подскажите пожалуйста как в RichTextBox задать текст в ртф формате по своему (с нуля, начиная с заголовка)? Дело в том, что я задаю текст...

Как в Joomla 3 задать свои стили отдельному материалу? - Joomla
Есть конкретный материал. К нему надо привязать css стили. Т.е, надо, чтобы стили для этого материала применялись не из общего шаблона, а...

Как задать свои иконки для панели задач и для программы в папке? - C++
Хочу, чтобы эти иконки отличались от той, что стоит в заголовке окна приложения.

Вывести на печать 3-х значные числа, которые делятся на свои цифры и перевертыш этого числа тоже делится на свои цифры - C (СИ)
здравствуйте. мне попалась одна задачка с перевертышем, раньше с таким не сталкивался и появились затруднения. Вывести на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Yandex
Объявления
09.09.2014, 20:41
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru