집 >백엔드 개발 >C#.Net 튜토리얼 >.NET의 추상 클래스에서 다형성 구현
1: 다형성이란 무엇인가요?
여러 형태, 즉 서로 다른 객체가 동일한 작업에 다르게 반응합니다.
둘: 추상 클래스에 대한 몇 가지 참고 사항
1. 추상 클래스는 추상으로 수정됩니다.
2. 추상 메서드는 추상 클래스에만 위치할 수 있습니다.
3. 추상 클래스는 인스턴스화할 수 없습니다
4. 추상 메소드에는 메소드 본문이 없습니다
5. 추상 클래스는 정적 또는 봉인 클래스일 수 없습니다
6. 하위 클래스는 반복되어야 합니다. 하위 클래스가 추상 클래스가 아닌 한 상위 클래스의 모든 추상 메서드
7. 추상 클래스에는 일반 메서드가 있을 수 있습니다.
8. 추상 클래스에는 생성자가 있을 수 있습니다.
9. 추상 클래스의 추상 메서드는 하위 클래스의 메서드 형식을 제한하는 것입니다.
세 번째: 추상 클래스의 "인스턴스화"
추상 클래스 자체는 new를 통해 인스턴스화할 수 없지만 참조 개체가 호출될 수도 있는 하위 클래스의 실제 개체를 가리킬 수 있습니다. 간접 인스턴스화.
Person을 상위 클래스로 사용
public abstract class Person{ public int Age { get; set; } public string Name { get; set; } public Person(int age,string name) { this.Age = age; this.Name = name; } public abstract void Say(); public void Eat() { Console.WriteLine("我是父类"); } }
Student 클래스가 Person을 상속함
public class Student:Person{ public Student(string name,int age){ public Student(int age, string name):base(age,name) { this.Age = age; this.Name = name; } public override void Say() { Console.WriteLine("子类说话"); } public void Eat() { Console.WriteLine("我是子类"); } }}
상위 클래스 객체가 하위 클래스의 실제 객체를 가리킬 때 하위 클래스는 먼저 다음의 구조를 따릅니다. 하위 클래스의 생성자에 있는 상위 클래스 Function은 해당 속성에 값을 할당합니다. ,
아아아아위 내용은 .NET의 추상 클래스에서 다형성 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!