设为首页 加入收藏

TOP

C#简单接口和继承示例详解——快速入门
2019-01-08 16:08:50 】 浏览:34
Tags:简单 接口 继承 示例 详解 快速 入门

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

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

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

我们运行一波看看效果!

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

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

 


编程开发网
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇指针加减移动的一些理解 下一篇c语言-switch

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

array(4) { ["type"]=> int(8) ["message"]=> string(24) "Undefined variable: jobs" ["file"]=> string(32) "/mnt/wp/cppentry/do/bencandy.php" ["line"]=> int(214) }