Inc*_*ito 12
它是抽象(抽象类,接口)的实现.请注意,您只能实例化具体类的对象.
例如,如果你有:
abstract class AbstractClass
{
.......
// Here you have some abstract methods
}
class ConcreteClass : AbstractClass
{
.......
}
Run Code Online (Sandbox Code Playgroud)
在WCF的情况下,它想说尽管允许使用ServiceContract属性更好地标记类以使其在单独的接口上并在具有ServiceBehavior属性的具体类中实现该接口.
像这样 :
[ServiceContract(Namespace = "MyNamespaceName")]
interface IMyInterface
{
[OperationContract]
int SomeMethod(.....);
......
......
}
[ServiceBehavior(......)]
public class SomethingConcrete : IMyInterface
{
// implementation of SomeMethod
}
Run Code Online (Sandbox Code Playgroud)
如果您有接口或抽象类,则需要实现它.
实现此类接口或类的类称为具体实现(因为只能实例化此类实现的类).
声明的原则意味着您不应该直接对具体实现进行编码,因为您可能希望稍后将其交换为另一个具体实现,而无需更改代码.这意味着您应该使用接口和抽象类引用而不是具体实现.
在术语“具体实现”中,单词“具体”是多余的。一个实现总是具体的,没有抽象的实现。因此,重要的只是术语“实现”。
在这种情况下,这意味着您应该针对抽象进行编码,而不是直接针对实现进行编码,即,为类必须支持的内容定义一个接口,并使用该接口代替类。这样,您可以用一个实现替代另一个实现,只要它们实现了接口即可。
归档时间: |
|
查看次数: |
9271 次 |
最近记录: |