C#接口-接口作为参数

C#接口-接口作为参数

厦门德仔

接口作为参数和返回值,都是同样的作用,所有继承了这个接口的类,都可以使用。也就是说,你给这个方法传参数的时候,可以把继承了这个接口的类的实例传给这个方法,同样的道理,你可以把继承了这个接口的类返回。

接口做为参数传递,传递的是实现了接口的对象;
接口作为类型返回,返回的是实现了接口的对象。

接口的传递与返回就是围绕着上面的两句话展开的。

using System;

// 一个人类的接口
public interface IPerson {
    void Say();
}
// 一个男人的类

public class Man: IPerson{
    public void Say(){
        Console.WriteLine("我是一个男人");
    }
}
// 一个女人的类

public class Woman: IPerson
{
public void Say()
{
    Console.WriteLine("我是一个女人");
}
}

// 一个人的类

public class People
{
public void Get(IPerson ipn) //接口做为参数传递
{
    ipn.Say();
}
}

class Program
{
static void Main(string[]args)
{
    People p = new People();
    Man m = new Man(); //这里,想实现谁接口里的方法,就实例化谁,然后在下边就传谁
    Woman w = new Woman();
    p.Get(m); //传递的是实现了接口的对象
    p.Get(w);
    Console.ReadLine();
}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值