Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.04.2012, 15:38
Deimos747 вне форума Посмотреть профиль Отправить личное сообщение для Deimos747 Найти все сообщения от Deimos747
  № 1  
Ответить с цитированием
Deimos747
 
Аватар для Deimos747

Регистрация: Mar 2011
Сообщений: 243
По умолчанию При наследовании убрать public метод родитля

Реально ли при наследовании убрать public методы родителя?
Я такой информации не находил, и сомневаюсь, что это возможно. Но если вдруг есть такой способ, то пожалуйста, поделитесь.

Старый 23.04.2012, 15:45
anmelegov вне форума Посмотреть профиль Отправить личное сообщение для anmelegov Найти все сообщения от anmelegov
  № 2  
Ответить с цитированием
anmelegov
[+4 07.04.12]
[+1 20.01.12]

Регистрация: Nov 2009
Адрес: Украина, Славутич
Сообщений: 263
вам надо пересмотреть архитектуру своей программы

Старый 23.04.2012, 15:46
DaFive вне форума Посмотреть профиль Отправить личное сообщение для DaFive Посетить домашнюю страницу DaFive Найти все сообщения от DaFive
  № 3  
Ответить с цитированием
DaFive
 
Аватар для DaFive

Регистрация: May 2008
Адрес: {0,0}
Сообщений: 754
Записей в блоге: 1
Отправить сообщение для DaFive с помощью ICQ
А зачем их убирать? Можно переопределить или не использовать. Наследование на то и наследование, чтобы чайлд получал все от родителя.
__________________
Кодинг, багинг, алгоритминг. me @

Старый 23.04.2012, 15:48
Aquahawk вне форума Посмотреть профиль Отправить личное сообщение для Aquahawk Посетить домашнюю страницу Aquahawk Найти все сообщения от Aquahawk
  № 4  
Ответить с цитированием
Aquahawk
 
Аватар для Aquahawk

Регистрация: Nov 2010
Адрес: Москва
Сообщений: 915
Записей в блоге: 4
Отправить сообщение для Aquahawk с помощью ICQ Отправить сообщение для Aquahawk с помощью Skype™
так нельзя делать идеологически. Методы которые рассчитывают на получение предка могут получать потомка и всё должно работать, поэтому все методы предка должны быть доступны.
В качестве костыля можете пометить в наследнике этот метод как deprecated и вам компилятор будет кидать варнинг. В режиме варнинг == ошибка вы не сможете скомпилировать такой код. Думаю будет работать.
Также переопределив можете там кинуть IllegalOperationError, чтобы в рантайме оно падало при попытке обратиться к этому методу. Комбинация этих двух методов должна работать, хотя конечно тот ещё костыль.

А может вам вместо наследования сделать композицию и руками пробросить вызовы нужных методов?
__________________
:)


Последний раз редактировалось Aquahawk; 23.04.2012 в 20:26.
Старый 23.04.2012, 17:03
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 5  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
оверрейдить и все тут
__________________
Марк Tween

Старый 23.04.2012, 17:43
incvizitor вне форума Посмотреть профиль Отправить личное сообщение для incvizitor Найти все сообщения от incvizitor
  № 6  
Ответить с цитированием
incvizitor
 
Аватар для incvizitor

блогер
Регистрация: Sep 2008
Адрес: Менск
Сообщений: 586
Записей в блоге: 1
Отправить сообщение для incvizitor с помощью Skype™
Цитата:
В качестве костыля можете пометить в наследнике этот метод как deprecated
Есть еще метатег Exclude.
__________________
ranga

Старый 23.04.2012, 19:50
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 7  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Метатег только прячет от автокомплита.
__________________
Hell is the possibility of sanity

Старый 23.04.2012, 20:00
Dukobpa3 вне форума Посмотреть профиль Отправить личное сообщение для Dukobpa3 Найти все сообщения от Dukobpa3
  № 8  
Ответить с цитированием
Dukobpa3
 
Аватар для Dukobpa3

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
Цитата:
Есть еще метатег Exclude.
и метатег private

Добавлено через 33 секунды
Вообще имхо бред, всё верно сказали. Если есть такая потребность значит проблема в архитектуре.
__________________
Кто к нам с чем для чего - тот у нас того от того.

Старый 23.04.2012, 20:32
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 9  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Код AS3:
override public function somePublicMethod():void
{
	throw new Error("Нема никого!");
}
__________________
Поймай яблоко 2!

Старый 24.04.2012, 02:20
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 10  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Цитата:
Сообщение от Dukobpa3 Посмотреть сообщение
Вообще имхо бред, всё верно сказали. Если есть такая потребность значит проблема в архитектуре.
Даже на солнце есть пятна. А уж чтобы архитектура без проблем - такого вообще не бывает.

В С++, вон, можно "приватно" наследовать реализацию без интерфейса и открывать методы по выбору (хотя, пишут, что обычно таки композицию вместо этого используют)

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:09.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 02:09.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.