标签:deb 存在 构造 void 自动 lin 一个 fun 关键字
接口:
1.属于任何类或结构的一组相关功能
2.定义:interface关键字定义,可由方法,属性,事件,索引器这四种成员类型的任意组合组成
例子:interface EatBehairor{}
接口的特征:
1、接口类似于抽象基类,不能直接实例化接口;接口中的方法都是抽象方法,实现接口的任何非抽象类型都必须实现接口的所有成员。
2、接口不能包含常量、字段、运算符、实例构造函数、析构函数或类型、不能包含静态成员。
3、接口成员是自动公开的,且不能包含任何访问修饰符。
4、接口自身可从多个接口继承,类和结构可继承多个接口,但接口不能继承类。
例子:
interface IProgram { void Fun(); } class Program:IProgram { //显式实现接口成员 void IProgram。Fun() { Console.WriteLine("I am Fun."); } staticvoid Main(string[] args) { IProgram p =new Program(); //声明一个接口实例,但不是对接口进行实例化 p.Fun(); Console.Read(); } }
5.一般情况,当类或者结构要实现的是单个接口,可以使用隐式实现。
6.如果类或者结构继承了多个接口且接口中具有相同名称成员时,就要用到显式实现,当显式实现方式存在时,隐式实现方式就失效了。
class Program : IProgram, IAProgram {
void IProgram.Fun() //显式实现接口IProgram { Console.WriteLine("I am IProgram Fun."); } void IAProgram.Fun() //显式实现接口IAProgram { Console.WriteLine("I am IAProgram Fun."); } }
class Program : IProgram, IAProgram { void Fun() //隐式继承接口失效 { Debug.Log("Fun") } void IProgram.Fun() //显式实现接口IProgram { Console.WriteLine("I am IProgram Fun."); } void IAProgram.Fun() //显式实现接口IAProgram { Console.WriteLine("I am IAProgram Fun."); } }
标签:deb 存在 构造 void 自动 lin 一个 fun 关键字
原文地址:https://www.cnblogs.com/blog-196/p/9744582.html