相关疑难解决方法(0)

我怎么知道何时创建界面?

我正处于开发学习的某个阶段,我觉得我必须更多地了解接口.

我经常阅读它们,但似乎我无法掌握它们.

我已经阅读过这样的例子:动物基类,IAnimal界面,如'Walk','Run','GetLegs'等等 - 但我从来没有做过某些事情,感觉就像"嘿我应该使用界面这里!"

我错过了什么?为什么我要掌握这么难的概念!我只是因为我可能没有意识到对一个人的具体需求而感到害怕 - 主要是由于理解它们的一些缺失方面!这让我觉得自己在成为开发者方面缺少一些东西!如果有人有过这样的经历并取得了突破,我会很感激如何理解这个概念.谢谢.

oop design-patterns class-design interface

191
推荐指数
12
解决办法
2万
查看次数

为什么我不能拥有受保护的接口成员?

反对在接口上声明受保护访问成员的论点是什么?例如,这是无效的:

public interface IOrange
{
    public OrangePeel Peel { get; }
    protected OrangePips Seeds { get; }
}
Run Code Online (Sandbox Code Playgroud)

在此示例中,接口IOrange将保证实现者至少OrangePips向其继承者提供实例.如果实现者想要,他们可以扩大范围public:

public class NavelOrange : IOrange
{
    public OrangePeel Peel { get { return new OrangePeel(); } }
    protected OrangePips Seeds { get { return null; } }
}

public class ValenciaOrange : IOrange
{
    public OrangePeel Peel { get { return new OrangePeel(); } }
    public OrangePips Seeds { get { return new OrangePips(6); …
Run Code Online (Sandbox Code Playgroud)

c# interface protected access-modifiers

67
推荐指数
6
解决办法
5万
查看次数

您是否有理由无法在方法或界面中定义访问修饰符?

方法可见性的责任归结为实现接口的类.

public interface IMyInterface
{
  bool GetMyInfo(string request);
}
Run Code Online (Sandbox Code Playgroud)

在方法GetMyInfo()生成以下错误之前,在C#set访问修饰符public,private或protected中:修饰符'private'对此项无效.

您是否有理由无法在方法或界面中定义访问修饰符?

(问题已经在法语中提到了这里)

c# interface access-modifiers

5
推荐指数
2
解决办法
2591
查看次数