Jaki jest modyfikator zastępowania?
W C#możesz utworzyć nową implementację metody lub właściwości, która jest już zadeklarowana w klasie podstawowej lub interfejsie za pomocą modyfikatora zastępowania. Umożliwia nam zmianę zachowania dziedzicznego członka klasy pochodnej. Po zastąpieniu metody lub właściwości możemy zapewnić własną implementację dla tego członka, co zastąpi implementację dostarczoną przez klasę podstawową lub interfejs.
Jak używać modyfikatora zastępowania?
Aby użyć modyfikatora zastępowania, musimy wykonać poniższe czynności:
Aby pomóc Ci to zrozumieć bardziej głębia, oto przykład.
Rozważ klasę podstawową o nazwie „pojazd”, która ma funkcję „start” w nazwie. Metoda Start po prostu drukuje wiadomość do konsoli, mówiąc, że pojazd się rozpoczął. Powiedzmy teraz, że chcę stworzyć nową klasę o nazwie „samochód”, która dziedziczy po klasie pojazdu, ale zapewnia własną implementację metody startowej. Oto jak możemy to osiągnąć za pomocą modyfikatora zastępowania:
za pomocą systemu;Tutaj stworzyłem nową klasę o nazwie „samochód”, która dziedziczy po klasie „pojazdu”. Zadeklarowałem również nową metodę o nazwie „Start” w klasie „Car”, o tej samej nazwie i podpisie co metoda w klasie „pojazdu”. Użyłem modyfikatora zastępowania, aby wskazać, że zastępujemy metodę odziedziczoną.
Zasadniczo stworzyłem instancje zarówno klas pojazdu, jak i samochodu i nazywałem na nich metodę startową. Kiedy wywołuję metodę rozpoczęcia na obiekcie pojazdu, drukuje „pojazd zaczął” do konsoli. Kiedy wywołuję metodę start na obiekcie samochodu, drukuje „samochód zaczął” do konsoli. To pokazuje, że pomyślnie zastąpiliśmy metodę start w klasie pochodnej:
Wniosek
Modyfikator zastępowania w C# jest potężnym narzędziem, które pozwala nam zmodyfikować zachowanie odziedziczonego członka. Służy do zapewnienia własnej implementacji dla metody lub właściwości, która jest już zdefiniowana w klasie podstawowej lub interfejsie. Omówiliśmy, jak użyć modyfikatora zastępowania w C# i zademonstrowaliśmy jego użycie z prostym przykładem. Korzystając z modyfikatora zastępowania, możemy tworzyć bardziej wyspecjalizowane klasy, które dziedziczą po klasie podstawowej, ale zapewniają własne unikalne zachowanie.