c# 学习笔记 接口 framework c#版本

接口是行为的规范
接口也是一种自定义类型
关键字 interface

接口声明的规范:
1. 不包含成员变量
2. 只包含方法、属性、索引器、事件
3. 成员不能被实现,包括访问器get和set。
C# 8.0 中开启默认接口实现
4. 成员可以不用写访问修饰符,默认是public ,但不能是私有的
5. 接口不能继承类,但可以继承另一个接口

接口的使用规范:
1. 类可以实现多个接口
2. 类要使用接口就必须实现接口中的所有成员,且必须是public的

接口命名规范:帕斯卡命名法,前面加个 I

实例:

namespace 默认接口实现
{
    interface IFlyable
    {
        public void Func()
        {
            Console.WriteLine("test");
        }
        void Fly();
        int Speed { get; set; }
    }
    class Bird:IFlyable
    {
        public void Fly()
        {
            Console.WriteLine("fly at speed " + Speed);
        }
        
        public int Speed { get; set; }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Bird bird = new Bird();
            bird.Speed = 10;
            bird.Fly();
            //fly at speed 10
            
            IFlyable i = bird;
            i.Func();
            //test

        }
    }
}

补充:
1. 接口不能实例化,但可以作为容器存储对象。
2. 接口默认实现的成员,如果实现该接口的类没有显式实现该成员,那么这个类不能使用该默认实现的成员。
3. .net Framework 与 c# 版本的对应如下
4. C#版本 .NET版本 发布日期 特性
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值