C# 接口

    xiaoxiao2021-03-25  129

    一、理论

    0.添加格式:

    interface 接口名 {

    属性、方法、事件、索引器

    }

    // 比如定义一个U盘类,继承接口 interface Usb{ // string type; 接口不能包含字段 string Type{get;set;} void Read (); // 只声明不实现 } class Upan:Usb{ public string Type{get;set;} public void read(){ Console.WriteLine("U盘读取数据"); } } class Yapn:Usb{ public string Type{get; set;} public void Read(){ Console.WriteLine ("这是什么啊,硬盘?读不了,插错口了"); } }

    1.接口是为了解决C#不能多继承的问题而生

    2.接口的继承,只继承声明

    3.类的继承,声明和实现都要继承

    4.接口的注意事项

    4.1 接口使用 interface关键字修饰,可以由属性、方法、索引器组成,不能包含字段

    4.2 在接口中,只能声明,不能实现

    4.3 由于接口是用来给别人继承的,所以所有的成员默认都是public,无需添加访问修饰符(添加会报错)

    5. 接口的使用

    5.1 接口定义出来就是让别的类去继承的

    5.2 一个类继承了几口,就要实现接口中的所有方法

    6.接口和抽象的对比

    相同点:都含有抽象成员

          都不能直接实例化对象

    不同点:抽象中可以有不同成员,接口只能由抽象成员

           抽象只能有一个父类,接口可以有多个父类

           抽象的成员可以私有,接口成员只能是公开的

           接口不能有构造、析构、静态,常量只能有方法、属性、引擎器

    7.接口的多重继承

     例如:

    // 定义接口a interface a { void ATest(); } // 定义接口b继承a interface b { void BTest(); } // 定义接口cclass继承b class cclass:b,a //如果用一个类继承多个接口,接口之间可以用逗号隔开 { public void ATest(){ Console.WriteLine ("这是A"); } public void BTest(){ Console.WriteLine ("这是B"); } } a aa = new cclass (); aa.ATest (); b aaa = new cclass (); aaa.BTest (); aaa.ATest ();

    转载请注明原文地址: https://ju.6miu.com/read-15199.html

    最新回复(0)