在c#中创建接口实例

azr*_*n92 8 c# interface

我在C#中使用接口而不是编写一个实现该接口的全新类,是否可以创建一个实现该接口的对象?界面定义为

public interface ITokenStore
{

    IToken CreateRequestToken(IOAuthContext context);


    IToken CreateAccessToken(IOAuthContext context);
}
Run Code Online (Sandbox Code Playgroud)

我知道在java中我可以这样

ITokenStore tokenStore = new ITokenStore()
    {
        IToken CreateRequestToken(IOAuthContext context) {
            IToken requestToken = null;

            return requestToken;
        }

        IToken CreateAccessToken(IOAuthToken context) {
            IToken accessToken = null;

            return accessToken;
        }
    };
Run Code Online (Sandbox Code Playgroud)

是否有一种等效的方法来实例化c#中的接口实例?

ang*_*son 11

"在c#中创建接口实例"的唯一方法是创建实现接口的类型的实例.

  • 不,你不能在.NET/C#中做到这一点,并且要清楚,*你不能用Java做*.编译器在Java中所做的是为您构建匿名类型,实现接口*的*类型.所以Java有获取该类型的捷径,C#没有. (6认同)