博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#简单接口和继承示例详解——快速入门
阅读量:5043 次
发布时间:2019-06-12

本文共 1633 字,大约阅读时间需要 5 分钟。

上一篇中我们说到继承,其实他们之间是差不多的。

接口是方法的抽象,如果不同的类有同样的方法,那么就应该考虑使用接口。

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();        }    }}

我们运行一波看看效果!

很显然,学生和计算机类的学生都继承了学生接口。

是不是很简单,灵活运用接口能给工作中带来很多便利哦!

 

转载于:https://www.cnblogs.com/xiongze520/p/10239043.html

你可能感兴趣的文章
wrodcount
查看>>
牛客小白月赛4——H-相邻的糖果
查看>>
##IO流基础知识掌握(二)
查看>>
LEGU脱壳
查看>>
JQUERY学习(壹)
查看>>
01-EF Core笔记之创建模型
查看>>
二进制枚举 + 容斥定理(hdoj 4336 )
查看>>
[Assign the task][dfs序+线段树]
查看>>
手把手教你怎么用动软.net代码生成器 搭建三层架构
查看>>
个人对团队项目的意见以及对项目需求的分析
查看>>
14.DNS:域名系统
查看>>
函数初识(函数的返回值,三元运算,函数的传参)
查看>>
object detection模型转换成TensorFlow Lite,在Android应用
查看>>
54.文件按大小切割
查看>>
fonts.useso.com 访问变慢
查看>>
mysql数据库修改数据表引擎的方法
查看>>
ScheduledExecutorService的两种方法
查看>>
H5页面在iOS网页中的数字被识别为电话号码,字体颜色变黑色,且颜色不可改变...
查看>>
Codeforces Round #202 (Div. 2) B. Color the Fence
查看>>
【Ubuntu系统探秘】总结Ubuntu启动过程
查看>>