Unity接口

接口:

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.");
}

1
2
3
4
接口的继承:

接口继承和类继承不同:

1.类继承不仅是说明继承,而且也是实现继承;而接口继承只是说明继承。

2.类继承只允许单继承,但是接口继承允许多继承,一个子接口可以有多个父接口。

interface IProgram
{
void Fun();
}
interface IAProgram:IProgram
{
}
class Program : IAProgram
{
void IProgram.Fun()
{
Console.WriteLine(“I am IProgram Fun.”);
}

staticvoid Main(string[] args)
{
Program pro =new Program();
((IAProgram)pro).Fun();
}
}
1
2
3
4
5
6

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值