Дом развитие Что такое переопределение? - определение из техопедии

Что такое переопределение? - определение из техопедии

Оглавление:

Anonim

Определение - Что означает «Переопределить»?

Переопределение в C # - это ключевое слово, используемое для замены виртуального члена, определенного в базовом классе, на определение этого члена в производном классе.

Модификатор переопределения позволяет программистам указывать специализацию существующего виртуального члена, унаследованного от базового класса, чтобы обеспечить новую реализацию этого члена в производном классе. Его можно использовать с методом, свойством, индексатором или событием, которое необходимо изменить или расширить в производном классе.

Модификатор переопределения предназначен для реализации концепции полиморфизма в C #.

Переопределение отличается от новых модификаторов тем, что первый используется только для переопределения виртуального члена базового класса, тогда как последний также помогает переопределить не виртуальный член, определенный в базовом классе, скрывая определение, содержащееся в базовом классе.

Техопедия объясняет переопределение

Переопределение в основном используется в контексте виртуального метода, в котором выполнение типа метода определяется типом среды выполнения экземпляра, в котором вызывается метод. Во время вызова вызывающей стороне не нужно знать, что вызываемый объект был экземпляром производного класса.

Например, если Shape является базовым классом, который предоставляет базовую реализацию, общую для всех объектов этого класса, его можно определить с помощью виртуального метода CalculateArea. Square может быть классом, производным от Shape, который может переопределить метод CalculateArea, чтобы реализовать логику, необходимую для вычисления площади квадрата.

Чтобы переопределить метод в производном классе:

  • Метод в базовом классе должен быть объявлен с виртуальным модификатором.
  • Метод в базовом классе может быть абстрактным, но не статичным.
  • Модификатор доступа метода в базовых и производных классах должен быть одинаковым.
  • Метод должен быть определен с одинаковой сигнатурой как в производных, так и в базовых классах.
Это определение было написано в контексте C #
Что такое переопределение? - определение из техопедии