* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна!
Наследование от абстрактного класса
8 февраля 2009
Классы, производные от абстрактных, если они сами таковыми не являются, долж- ны предоставлять реализацию для всех абстрактных членов, объявленных в классе- предке, Чтобы предоставить реализацию для абстрактного члена, необходимо пере- определить его как член любого другого класса. Ниже показан пример реализации абстрактного класса, объявленного в предыдущем примере:
Visual Basic .NET Public Class MyCar Inherits Car Public Overrides Sub GoForward(8yVal I As Integer) Сюда нужно поместить код реализации этого метода, End Sub Public Overrides Function CheckSpeecK ) As Integer ' а сюда - реализацию этого метода. End Function Public Overrides Property Colorf) As String Get Необходимо написать реализацию для получателя и установщика свойства End Get Set(ByVal Value As String) Сюда нужно поместить код реализации установщика End Set End Property End Class Visual C# public class МуСаг : Саг { public override void GoForward(int I) { // Сюда нужно поместить код реализации этого метода, > public override int CheckSpeedf) { // а сюда - реализацию этого метода. } rpublic override string Color { get { // Необходимо написать реализацию для получателя // и установщика свойства ; set { // Сюда нужно поместить код реализации установщика Разрешено также создавать новые абстрактные классы, объявляя их на основе существующих. В этом случае производный абстрактный класс может (но не обя- зан) предоставлять реализацию для абстрактных членов, определенных в базовом классе. > Как объявить абстрактный класс 1. Объявите абстрактный класс при помощи ключевого слова Mustlnherit (Visual Basic .NET) или abstract (C#). 2. Объявите все необходимые абстрактные члены при помощи ключевых слов Must- Override (Visual Basic .NET) или abstract (C#). 3. Напишите реализацию для неабстрактных членов, которые должны быть в ва- шем классе.