>  기사  >  백엔드 개발  >  C#에서 메서드 재정의와 메서드 숨기기의 차이점

C#에서 메서드 재정의와 메서드 숨기기의 차이점

WBOY
WBOY앞으로
2023-09-16 21:01:021535검색

C# 中方法重写和方法隐藏的区别

C#에는 하위 클래스를 통해 상위 클래스 메서드를 재정의하거나 새로운 구현을 제공하는 두 가지 메커니즘이 있으며, 이 두 메커니즘을 메서드 재정의와 메서드 숨기기라고 합니다. 이제 메소드가 다시 구현되는 방식에 따라 차별화할 수 있습니다.

다음은 메소드 재정의와 메소드 숨기기의 중요한 차이점입니다.

일련번호 키워드 메서드 재정의 메소드 숨기기
1 정의 메서드 재정의는 다형성을 달성하기 위한 메커니즘입니다. 클래스와 하위 클래스는 다음을 포함하여 동일한 메서드를 가집니다. 매개변수 및 시그니처가 있으며 하위 클래스 객체를 사용하여 호출되면 하위 클래스의 구현이 호출됩니다. 반면, 메소드 숨기기는 사용자가 new 키워드를 사용하여 기본 클래스 또는 상위 클래스의 메소드를 재정의하여 기본 클래스에 의해 해당 특정 메소드의 주요 기본 구현을 숨길 수 있는 기술로 정의될 수 있습니다.
2 부모 클래스 구현에 액세스 메서드 재정의에서 하위 클래스는 부모 클래스 메서드의 구현에 액세스할 수 있습니다. 메서드 숨기기에서는 하위 클래스 참조를 통해 상위 클래스 메서드의 구현에 액세스할 수 없습니다.
3 수정자 사용법 메서드 재정의에서는 override 키워드를 사용하세요. 메서드 숨기기에서 new 키워드를 사용하여 하위 클래스에 새 구현을 정의합니다.
4 구현 유형 메서드 재정의에서 메소드의 구현 유형은 객체 유형입니다. 그러나 메소드 숨기기에서는 메소드의 구현 유형이 참조 유형입니다.
5 부모 클래스에서 자식 클래스로의 참조 메서드 재정의에서 부모 클래스 참조 변수가 자식 클래스의 객체를 가리키는 경우 자식 클래스에서 재정의된 메서드를 호출합니다. 반면, 메소드 숨김에서는 상위 클래스 참조 변수가 하위 클래스의 객체를 가리킬 때 상위 클래스의 숨겨진 메소드를 호출합니다.
6 Purpose 메서드 재정의는 메서드 구현을 재정의할 뿐입니다. 메소드 숨기기는 메소드를 완전히 재정의할 수 있습니다.

위 내용은 C#에서 메서드 재정의와 메서드 숨기기의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제