这里的情况。我有一个类和派生类限制传递派生类的实例作为方法参数
public class MyClass
{ }
public class MyDerivedClass : MyClass
{ }
同时,我有一种方法(在外部类),它利用了MyClass
一个实例作为参数:
public class AnotherClass {
public void DoSomething(MyClass myClass)
{ }
}
我怎样才能限制DoSomething
方法仅接受MyClass
的实例,但不接受MyDerivedClass
的实例?
你为什么要这么做? – Philippe
你不能。您可以在运行时检查类型和抛出一个异常,但没有编译器可以防止 – pinkfloydx33
是对面向对象的编程什么你问,*** MyDerivedClass ** ** IS MyClass的***。这就像“我不想要一辆车,但我想要一辆法拉利!” – Esko