C#接口-接口的继承

类之间可以继承,和类一样,接口也允许继承。C#中接口可以多继承,接口之间可以互相继承和多继承。普通类和抽象类可以继承接口。一个类可以同时继承一个类和多个接口,但是接口不能继承类。

假如你是一名在职学习的学生,你就具有双重身份。一个身份是学生,必须完成学习任务,另一身份是职员,必须完成工作任务。进一步说,如果你是计算机类学生,除学基础课外,还必须学习C#程序设计。现在建立一个模型,应该如何建立?

我们首先来定义一个学生接口,规定学生必须学习,再建立一个职员接口,规定职员必须完成工作任务。计算机专业的学生,除了完成一般学习任务,还是学习C#。可以再定义一个接口,继承学生接口,规定自己的学习任务。

using System;

//定义学生接口

public interface IStudent

{

void StudyBase();

}

//定义职员接口

public interface IEmployee

{

void Work();

}

//定义计算机专业学生接口

public interface IInfoStudent: IStudent

{

void StudySpecial();

}

public class InfoStudent: IEmployee, IInfoStudent

{

//实现学生接口方法

public void StudyBase()

{

Console.WriteLine("数学、语文和英语必须学好");

}

//实现职员接口方法

public void Work()

{

Console.WriteLine("工作必须完成");

}

//实现计算机专业学生接口

public void StudySpecial()

{

Console.WriteLine("计算机类的学生除学好基础课外,还要学C#");

}

}

class Program

{

public static void Main()

{

InfoStudent student = new InfoStudent();

student.StudyBase();

student.Work();

student.StudySpecial();

}

}

说明:接口之间继承表示方法和类继承是相同的,继承的规则也是相同的,即子接口获得父接口的内容,如果有多个接口,接口之间用“,”号隔开。