>백엔드 개발 >C#.Net 튜토리얼 >C# 학습일지 22---다중 상속

C# 학습일지 22---다중 상속

黄舟
黄舟원래의
2017-01-21 15:23:411645검색

상속은 객체지향 프로그래밍에서 가장 중요한 개념 중 하나입니다. 상속을 사용하면 한 클래스를 기반으로 클래스를 정의하여 다른 클래스를 정의할 수 있습니다. 클래스가 다른 클래스에서 파생되면 파생 클래스는 기본 클래스의 특성을 상속받습니다.

상속 개념은 다음과 같이 구현됩니다. (IS-A) 관계. 예를 들어, 포유류는 (IS-A) 동물이고 개는 (IS-A) 포유류이므로 개는 (IS-A) 동물입니다.

기본 클래스 및 파생 클래스:

  C#에서 파생 클래스는 직접 기본 클래스에서 멤버, 메서드, 속성, 필드, 이벤트, 인덱스 표시기를 상속하지만 생성자와 소멸자 함수는 제외합니다.

아래에 예시를 작성해 보세요.

using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  
  
namespace Test  
{  
    class Anlimal  //定义一个基类  
    {  
        protected int foot = 4;  
        protected double weight = 22.4;  
        protected void say(string type, string call)  
        {  
            Console.WriteLine("类别:{0},叫声:{1} ",type,call);  
        }  
    }  
   
    //Dog 继承Anlimal   
    class Dog:Anlimal  
    {  
        static void Main(string[] args)  
        {  
            Dog dog = new Dog();  
            int foot = dog.foot;  
            double weight = dog.weight;  
            Console.WriteLine("dog foot: {0}\ndog weight:{1}",foot,weight);  
            dog.say("狗", "汪汪");  
        }  
    }  
}

결과

C# 학습일지 22---다중 상속

다중 상속:

C#은 다중 상속을 지원하지 않습니다. 그러나 인터페이스를 사용하여 다중 상속을 구현할 수 있습니다. 위의 예에서는 smallanlimal 인터페이스

using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  
  
namespace Test  
{  
    class Anlimal  //定义一个基类  
    {  
        protected int foot = 4;  
        protected double weight = 22.4;  
        protected void say(string type, string call)  
        {  
            Console.WriteLine("类别:{0},叫声:{1} ",type,call);  
        }  
    }  
  
    public interface smallanlimal  //添加一个接口 接口只声明方法在子类中实现  
    {  
        protected void hight(double hight);  
         
    }  
    //Dog 继承Anlimal   
    class Dog:Anlimal,smallanlimal  
    {  
        public void hight(double hight)  //实现接口  
        {  
            Console.WriteLine("Hight: {0}",hight);  
        }  
        static void Main(string[] args)  
        {  
            Dog dog = new Dog();  
            int foot = dog.foot;  
            double weight = dog.weight;  
            dog.hight(23.23);  
            Console.WriteLine("dog foot: {0}\ndog weight:{1}",foot,weight);  
            dog.say("狗", "汪汪");  
        }  
    }  
}

를 추가했습니다. 위는 C# 학습 일기 22---다중 상속에 대한 내용입니다. PHP 중국어 넷(www.php.cn)에 주목하세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.