다형성 연구는 C #을 (가) 가상 메서드 노트

  객체 지향 프로그래밍에서, 세 종류의 특징은 캡슐화, 상속, 다형성. 상기 다중 상태의 세 가지 방법에 따라 특정, 즉 가상 메소드 , 추상 클래스인터페이스.

  다형성의 구체적인 역할은 무엇입니까? 또는 다형성은 무엇인가 존재? 다형성 효과적으로 사용뿐만 아니라 우리가 공통적으로 가지고있는, 또한 필요한 경우 일부 특수 문자를 강조 표시 할 수 있습니다 때, 커플 링 절차를 줄일 존재.

  그렇다면 세 다형성 방법으로 그것을 위에서 설명한 달성합니까?

  나 오늘에 대해 얘기하자 가상 방법 :

  첫째, 우리는 인간의 기본 클래스를 정의합니다. 어떤 사람의 이름과 국적이 포함되어 있습니다.

클래스 는 Person 
{ 
    공공  문자열 이름;
     공공  문자열 나라,
     공공  무효가 제 (소개) 
    { 
      Console.WriteLine (
" 내 이름은 " + 이름);
      Console.WriteLine (+ 나라 "I에서 온"); }
}

 

  그런 다음 우리는 클래스를 추가 할 수 있습니다.

클래스 People1 : 사람 
{ 
    
}

  이 시점에서 우리는 객체 참조 할당을 작성했다

CH = People1 새로운 새로운 People1 (); 
ch.Name = " " , 
ch.Country = " 중국어 " , 
ch.Introudce (); 


결과는 : 
내 이름은 밥이다 
나는 중국에서 온

 

  모두가 중국인 경우,이 메소드는 능력이 충분하지만 외국이 아닌 중국어에서 같은 사람이 왜 거기에,이 방법은 입의 비트를 소개합니다. 그가 그것을 거부하기 때문에 합리적인가, 특별한 경우, 우리는 그에게 특별한 넣을 수 없습니다. 이 다형성에서 눈에 띄는 소리 쳤다 : "내 머리 볼륨이 나를 보자!"

  가상 메소드 : 가산 전의 클래스 선언에있어서 가상  개질제, 그것은 가상이 아닌 반면, 가상 메소드 호출된다. 그리고 사용하여 가상  후 수정을 할 수 없습니다 다음이 정적, 추상, 또는 재정의  수정을. 이 가상 방법으로, 우리는 아주 쉽게이 특별한 경우를 해결할 수 있습니다.

  첫째, 우리는, 기본 클래스의 표현 방법을 수정 비어하자, 그리고 (A 추가 뜻 가상의 방법이 될 필요가 수정 가상을 )

클래스 는 Person 
{ 
    공공  문자열 이름;
     공공  문자열 나라,
     공공 가상  무효 Introudce ()이 메소드는 가상 메서드가되도록하는 수정 가상 프리젠 테이션을 추가 // 
    { 
        Console.WriteLine는 ( " 내 이름은 " + 이름); 
        Console.WriteLine ( " I에서 온 " + ) 국가; 
    } 
}

 

   그리고 우리는이 비 사회적인 예외가 와서 추가 할 것입니다, 특히, 그의 독특한를 변경하는 방법, 우리는 전화를 재 작성 ( 오버라이드 ) .

클래스 People2 
{ 
    공공  재정의  무효가 (소개) 
    { 
        Console.WriteLine는 ( " 내 이름은 " + 이름); 
        Console.WriteLine ( " 나는에서 왔어요 " + 국가); 
    } 
}

 

  다음으로 우리는 단지 코끼리를 냉장고에 넣을 필요가있다. , 할당 참조 객체를 생성

People2 읍는 = 새로운 People2을 (); 
Eup.Name = " " ; 
Eup.Country = " 미국 " ; 
Eup.Introudce은 (); 

运行结果: 
내 이름은 이다 
I ' 미국에서 m

 

  대규모의 변경을 필요로하지 않습니다, 필요에 따라 수정, 시간의 수정을 필요로하지 않는 원래의 방법을 사용할 수 있습니다, 이것은 가상 방법의 장점이다.

, 운이 충분히 노인 볼 수 오류가있는 경우 이러한 노인도 날, 감사의 감사를 알려 할 수 있도록하려면, 내 작은 소견의 일부입니다! ! !

 

 

 

 

 

추천

출처www.cnblogs.com/wangxiao666/p/11832267.html