上一篇中我们说到继承,其实他们之间是差不多的。
接口是方法的抽象,如果不同的类有同样的方法,那么就应该考虑使用接口。
c#中接口可以多继承,接口之间可以相互继承和多继承。一个类可以同时继承一个类和多个接口,但是接口不能继承类。
接口之间继承表示方法和类继承是相同的,继承的规则也是相同的,即子接口获得父接口的内容,如果有多个接口,接口之间用”,”隔开。
老规矩,上菜:
using system; using system.collections.generic; using system.linq; using system.text; using system.threading.tasks; /** * 假如你是一名在职学生,你就具有双重身份。一个身份是学生,必须完成学习任务,一个身份是职员,必须完成工作任务。进一步说,你是计算机类学生,除了学习基础课程, * 还必须学习c#程序设计。现在建立一个模型,应该如何建立? * 1.我们首先来定义一个学生接口,规定学生必须学习,再建立一个职员接口,规定职员必须完成工作任务。 * 2.计算机专业的学生,除了完成一般学习任务,还是学习c#。可以再定义一个接口,继承学生接口,规定自己的学习任务。 */ namespace interfaceapplication { //定义学生接口 public interface istudent { void study_base(); } //定义计算机类学生接口 public interface iistudent : istudent { void study_computer(); } //定义职员接口 public interface iemployee { void work(); } public class infostudent : iemployee, iistudent { //实现学生接口 public void study_base() { console.writeline("学生:数学、语文和英语必须学好"); } //实现计算机类学生接口 public void study_computer() { console.writeline("计算机类学生:数学、语文和英语必须学好,还要学c#"); } //实现职员接口 public void work() { console.writeline("职员:工作必须完成"); } } //运行程序 class program { static void main(string[] args) { infostudent infostudent = new infostudent(); infostudent.study_base(); infostudent.study_computer(); infostudent.work(); console.readkey(); } } }
我们运行一波看看效果!
很显然,学生和计算机类的学生都继承了学生接口。
是不是很简单,灵活运用接口能给工作中带来很多便利哦!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/605600.html