zoukankan      html  css  js  c++  java
  • 接口

    是一种引用类型 

    接口里定义一组函数成员,单是自己不实现它们,而让类来实现(接口的实现与继承相似)。(感觉像只带着抽象方法(或其他抽象东西)的抽象类)

    定义的成员默认是public ,但是不能把public 写在上面

    一个类同时可以继承自一个基类+实现多个接口

    class Program
        {
            static void Main(string[] args)
            {
              
                Cat C = new Cat("CC1");//由于Cat实现了接口IPlayWoolBall和IEatFish,
    //所以这两个接口里的方法都在Cat中得到了实现,
    //可以通过实例C调用接口里定义方法同名的方法 C.PlayWoolBall(); C.EatFish(); IPlayWoolBall playBall
    = (IPlayWoolBall)C; //声明接口的实例playBall,是通过类的实例C来实现的 playBall.PlayWoolBall();//接口的实例就只能获取到接口里定义过的方法同名的方法 IEatFish eatFish = (IEatFish)C; eatFish.EatFish(); } } abstract public class Pet//当包含抽象方法时,必须用abstract声明 { protected string Name;//protected 保护级别,派生类可访问 public Pet(string name)//基类的构造函数 { Name = name; } abstract public void Speak(); } interface IPlayWoolBall //声明接口 { void PlayWoolBall();//定义了一个函数 PalyWoolBall() } interface IEatFish { void EatFish(); } public class Cat : Pet,IPlayWoolBall,IEatFish//一个类可以实现多个接口,基类和接口都存在的情况下,基类要写最前面 { public Cat(string name):base(name)//构造函数//用关键字base调用了基类的构造函数 { } override public void Speak()//override基类Pet的抽象方法 { Console.WriteLine("子说" + Name); } public void PlayWoolBall() { Console.WriteLine(Name+" play wool ball"); } public void EatFish() { Console.WriteLine(Name+" eat fish"); } }
  • 相关阅读:
    【HTML】使用css3和html给网站添加上春节灯笼特效
    【CSS】学习笔记2 字体设置
    【CSS】学习笔记3 段落设置
    【CSS】学习笔记1 使用CSS样式表
    正则
    图片懒加载
    uni-app-组件
    uni-app-condition(条件)启动模式
    uni-app-页面
    uni-app项目目录和开发规范
  • 原文地址:https://www.cnblogs.com/cicily/p/10917289.html
Copyright © 2011-2022 走看看