【发布时间】:2015-08-12 09:36:27
【问题描述】:
我试图理解,如果我创建一个接口 ITest,它定义了一个只有 getter 的属性版本。然后,当我在 Test 类中实现此接口时,我可以将属性的定义更改为 getter 和 setter。如何更改接口的实现,如下所示?
internal interface ITest
{
int MyProperty { get;}
void changeValue();
}
public class Test : ITest
{
public int MyProperty
{
get;
set;
}
public void changeValue()
{
}
}
【问题讨论】:
-
你仍然尊重接口 - 你有一个属性获取器。该界面也不排除您也添加一个 setter。
-
为什么?如何?问题是什么?
-
我同意 Blam,你的问题不清楚。 Could you try to clarify it a bit?
-
@Rob 我明白你想说的话。这意味着我们正在实现 getter,甚至用 setter 覆盖实现。这就是它起作用的原因。我说的对吗?
-
接口定义了你必须拥有的,而不是你可以拥有的。如果接口有这种限制,那么您的类将仅能够在接口中定义方法,而您将无法创建自己的方法或属性,除非它们位于接口中。跨度>