繁体   English   中英

如何正确使用C#接口?

[英]How to use C# interface properly?

有人可以更正我的代码吗? 我想创建一个接口对象并使用它的方法,但我坚持使用此代码。

Visual Studio错误提示:使用未分配的局部变量“ MyInterface”

IBattleNetSettings MyInterface;
        MyInterface.Username = "MyUsername";
        BattleNetClient cs = new BattleNetClient(MyInterface); 

顺便说一句,如果您想要接口类,请使用以下代码: IBattleNetSettings

对于BattleNetClient类: BattleNetClient <-看一下这段代码。它的构造函数需要IBattleNetSettings接口的实例。

我只想创建BattleNetClient类的实例,但由于遇到了IBattleNetSettings中的一个实例,而被困住了,我不知道该怎么做。

如何创建BattleNetClient类的实例?

提前致谢 : )

您无法创建接口实例。 您应该创建(或获得)实现该接口的类的实例:

IBattleNetSettings settings = new BattleNetSettings();

如果项目没有提供您可以使用的实现,那么您可能必须自己编写:

public class BattleNetSettings : IBattleNetSettings 
{
    public string Username { get; set; }
    // etc...
}

考虑分配给它吗?

一个接口就是……一个接口。 您将要使用一个具体的实现。

例如,您可能希望使用一个名为BattleNetSettings的类来实现IBattleNetSettings,可以使用:

IBattleNetSettings MyInterface = new BattleNetSettings();
MyInterface.Username = "MyUsername";
BattleNetClient cs = new BattleNetClient(MyInterface);

但是,名称“ MyInterface”的使用非常混乱,我建议使用更合适的名称。 :)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM