Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> сделать метод public баз. класса private в наслед, можно ли ?? 
V
    Опции темы
PaZ1T1V
Дата 9.10.2009, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Доброго времени суток!

Есть базовый абстрактный класс А
в нем есть абстрактный открытый метод М()

Код

public abstract class A
{
   public abstract A M();

}


есть наследник B:A

можно ли как-нибудь сделать чтобы  в классе B метод М сделать закрытым?

например

Код


public class B: A
{
   B()
   {
   ..........
   }

   private override A M()
  {
.  ........
  }
}



не переопределять нельзя, вылазит ошибка компилятора, а вот закрыть его ...... можно ли ???

Это сообщение отредактировал(а) PaZ1T1V - 9.10.2009, 18:42
--------------------
[size=8]Atention please!!![/size]
[size=6]Кривые руки[/size]
PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
KelTron
Дата 10.10.2009, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Нельзя, а какой в этом смысл?


--------------------
Тысячами незримых нитей обвивает тебя Закон. Разрубишь одну - преступник. Десять - смертник. Все - Бог.
Эвенгар Салладорский, основатель Школы Тьмы.
PM MAIL   Вверх
AlexLakers
Дата 10.10.2009, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



PaZ1T1V, лучше напиши зачем тебе это нужно, возможно люди чем-нибудь да помогут. 

Цитата
Всё есть число.
                    Пифагор

"Всё подобно числу" smile
PM MAIL   Вверх
archeg
Дата 12.10.2009, 01:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



PaZ1T1V, это противоречит нормальной логике. Если ты наследуешься от класса А, то логично что ты ожидаешь что все дети класса А будут иметь его интерфейс. Если тебе это не нужно, то тогда зачем наследоваться от класса А?

Если уж очень надо убить функциональность метода - то можешь его переопределить и вписать в нем throw new NotImplementedException(). Майкрософт так очень любит делать  smile 


--------------------
ИМХО задница есть универсальный интерфейс. Ибо через задницу можно сделать абсолютно ВСЕ (bash.org.ru)

Дядька всегда можно спросить в аське, если не задалбывать - не откажет smile
И вообще, на самом деле я студент, и ненавижу обращение на "Вы") Тут все свои  ;)
PM MAIL ICQ Jabber   Вверх
AlexLakers
Дата 12.10.2009, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата

Если уж очень надо убить функциональность метода - то можешь его переопределить и вписать в нем throw new NotImplementedException(). Майкрософт так очень любит делать  

Например? 
PM MAIL   Вверх
mihryak
Дата 12.10.2009, 13:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(AlexLakers @  12.10.2009,  11:56 Найти цитируемый пост)
Цитата

Если уж очень надо убить функциональность метода - то можешь его переопределить и вписать в нем throw new NotImplementedException(). Майкрософт так очень любит делать  

Например?  

обычно всё же, по-моему, NotSupportedException
его действительно весьма много во фреймворке, например, изрядная часть методов наследников Stream может (и даже порой должна) его кидать
PM MAIL ICQ   Вверх
PaZ1T1V
Дата 12.10.2009, 16:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Да ребята, все понятно, хорошо, сделаю, просто есть несколько наследников от одного абстрактного класса А и все из них кроме одного должны наследовать метод М1 а в последнем это не надо делать.... вот и все а  throw new NotImplementedException(); и не надо прописывать, он по умолчанию там, я про него знал, просто думал есть и еще какой другой способ, знаю что это не логично, но все же...ладно, вопрос решен, тема закрывается....

Это сообщение отредактировал(а) PaZ1T1V - 12.10.2009, 16:56
--------------------
[size=8]Atention please!!![/size]
[size=6]Кривые руки[/size]
PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




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


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

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