c# 상속 : 이해 및
new
는 파생 클래스에서 메소드 동작을 관리하는 독특한 방법을 제공합니다. 이 설명은 차이점과 적절한 사용법을 명확하게합니다
override
수정 자 : 별도의 메소드 정의
new
수정자를 통해 파생 클래스는 기본 클래스의 메소드와 동일한 이름을 가진 메소드를 도입 할 수 있습니다. 결정적으로,이 는 기본 클래스 방법을 무시하지 않습니다. 대신, 그것은 완전히 독립적 인 방법을 만듭니다. override
예 :
여기, new
는 뚜렷한 방법입니다. 인스턴스에서 를 호출하면 파생 클래스의 버전이 실행됩니다. 인스턴스에서 호출하면 기본 클래스의 버전이 실행됩니다.
new
수정자는 기본 클래스에서 가상 메소드의 구현을 대체하는 데 사용됩니다. 기본 클래스 메소드
(또는 )로 선언되어야합니다.
<code class="language-csharp">public class BaseClass { public void MyMethod() { Console.WriteLine("BaseClass Method"); } } public class DerivedClass : BaseClass { public new void MyMethod() { Console.WriteLine("DerivedClass Method"); } }</code>를 재정의합니다. 인스턴스에서 를 호출하면 항상 버전을 실행합니다.
DerivedClass.MyMethod()
요약 된 주요 차이점 : MyMethod()
DerivedClass
BaseClass
각 수정자를 사용하는 시점 :
new
override
이러한 차이점을 이해함으로써 C# 응용 프로그램에서 상속 및 다형성을 효과적으로 활용할 수 있습니다.
위 내용은 C# 상속에서`new '와`재정의'의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!