Описание тега method-hiding

2 ответа

Скрыть метод базового класса в универсальном производном классе

У меня есть базовый класс, как это: class FooBase { public bool Do(int p) { /* Return stuff. */ } } И детский класс, как это: class Foo<T> : FooBase { private Dictionary<T, int> Dictionary; public bool Do(T p) { int param; if (!Dictionar…
01 авг '12 в 11:38
2 ответа

Почему помеченный метод, который скрывает реализацию в базовом классе, может вызывать скрытый метод?

Я немного читал о спецификациях C# и натолкнулся на сценарий, которого не ожидал, и надеялся, что кто-нибудь поделится каким-то осмыслением. Я наткнулся через new ключевое слово для сокрытия членов базового класса в производном классе, а затем неско…
18 авг '14 в 11:50
4 ответа

Какое значение имеет термин "скрытие" в концепции метода скрытия в Java?

Вопрос был поставлен для обсуждения термина скрытия, который связан со статическими методами в Java. Всякий раз, когда статический метод с одинаковой сигнатурой определяется в родительском и дочернем классах, говорят, что метод дочернего класса скры…
28 апр '18 в 08:10
2 ответа

Как скрыть все переопределения родительского метода в C#

Я расширяю класс библиотеки, который имеет публичный метод, который я не хочу вызывать извне. Я знаю, что могу скрыть это, используя ключевое слово "new", но проблема в том, что у него много разных объявлений. Что-то вроде этого: class Parent() { pu…
4 ответа

Наследовать метод с несвязанными типами возврата

У меня есть следующий фрагмент кода public class Test { static interface I1 { I1 m(); } static interface I2 { I2 m(); } static interface I12 extends I1,I2 { I12 m(); } public static void main(String [] args) throws Exception { } } Когда я пытаюсь ег…
14 мар '12 в 14:46
5 ответов

Каковы различия между переопределением виртуальных функций и сокрытием не виртуальных функций?

Учитывая следующий фрагмент кода, каковы различия в вызовах функций? Что такое скрытие функций? Что такое переопределение функции? Как они связаны с перегрузками функций? Какая разница между двумя? Я не мог найти хорошее описание их в одном месте, п…
3 ответа

Скрытие метода от класса VB в производном классе C#

Я пишу набор модульных тестов для большого, сложного класса, называемого ImageEditor, из фрагмента устаревшего кода, в котором обработка изображений и функциональность графического интерфейса пользователя строго не разделены. Один из методов в класс…
20 апр '11 в 16:08
4 ответа

Скрытие метода в наследовании Java

У меня есть два класса следующим образом: public class Car { public static void print() { System.out.println(getWord()); } public static String getWord() { return "CAR"; } } public class BMW extends Car { public static String getWord() { return "BMW…
5 ответов

java, нестатический к статическому методу - скрытие или переопределение

Переопределение нестатического метода в подклассе с тем же всем, но как статическое переопределение или скрытие его? http://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html говорит, что скрывается. но когда я объявляю метод суперкласса как…
19 ноя '12 в 04:55
2 ответа

Использование ключевого слова new при создании метода с такой же сигнатурой, что и в суперклассе?

Вернуться к CS101 очень быстро. Я пытаюсь расширить поведение метода Add в классе ConcurrentDictionary, В результате этого не будучи virtual или же abstract Я не должен отмечать это override Ключевое слово, я могу просто создать новую функцию в моем…
09 фев '16 в 17:38
5 ответов

В чем разница между скрытием метода и теневым копированием в C#?

В чем разница между скрытием метода и теневым копированием в C#? Они одинаковые или разные? Можем ли мы назвать их полиморфизмом (время компиляции или время выполнения)?
01 мар '12 в 16:38
3 ответа

Как реализовать закрытый, публичный вложенный класс, который может быть создан только включающим его классом?

Цель Моя цель - реализовать закрытый открытый вложенный класс, который может быть создан только включающим его классом - без использования отражения. Это означает, что вложенный класс не может иметь никаких открытых или внутренних конструкторов или …
02 май '13 в 13:26
1 ответ

Базовый виртуальный метод не вызывается или вызывается дважды

Вот мой код. public class EventItem { public int Id { get; set; } = -1; public int ClientId { get; set; } public EventItem(IDataRecord rdr) { FillAttributs(rdr); } public virtual void FillAttributs(IDataRecord rdr) { this.Id = (int)rdr["EventId"]; t…
16 ноя '17 в 14:41
3 ответа

Унаследованный метод не имеет доступа к новой реализации в производном классе

Как указано в этой статье MSDN: Объект типа производного класса не имеет доступа к новому переопределенному методу, унаследованному от базового класса, и к вызову объекта производного класса из ShowDetails() Метод внутри унаследованного метода Descr…
25 мар '15 в 17:01
5 ответов

Inheritance действительно скрывает методы?

Я получаю следующее предупреждение компилятора: 'Resources.Foo.GetType()' hides inherited member 'object.GetType()'. Use the new keyword if hiding was intended. Resources.NET\Resources\Class1.cs 123 20 Resources для этого (очень упрощенного) кода: p…
20 июл '09 в 05:41
1 ответ

Допустимо ли скрывать свойство в производном интерфейсе, которое возвращает производный тип?

TL;DR Что плохого в том, чтобы скрыть свойство в интерфейсе, чтобы я мог изменить его объявление, чтобы оно возвращало производный тип исходного свойства? Я уверен, что об этом уже спрашивали, но я не могу его найти, и извиняюсь за длинный вопрос. С…
20 мар '12 в 07:51
13 ответов

Переопределение против сокрытия Java - Confused

Я запутался в том, как Overriding отличается от Hiding в Java. Кто-нибудь может предоставить более подробную информацию о том, как они отличаются? Я прочитал Учебник по Java, но пример кода все еще оставил меня в замешательстве. Чтобы быть более ясн…
3 ответа

Переопределение против скрытия метода

Я немного озадачен переопределением или сокрытием метода в C#. Практическое использование каждого также будет оценено, а также объяснение того, когда каждый будет использовать каждый. Я запутался в переопределении - почему мы переопределяем? До сих …
01 окт '10 в 11:03
2 ответа

Преимущество метода сокрытия в Java

Я читал о концепции сокрытия методов в Java, но я не уверен, что понимаю преимущества. В каких случаях будет полезен метод сокрытия?
22 авг '12 в 12:11
2 ответа

Скрытие методов, присутствующих в базовом классе

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace LearnOverride { class Program { static void Main(string[] args) { Owner owner = new Owner(); Safe safe = new Safe(); Console.WriteLine("When \tLocksmith …
04 мар '13 в 05:31