在compimation中遇到一個奇怪的問題,說一個類沒有實現一個接口。通用類實現接口失敗
比方說一個V有一個類:
public Class MyClass
{
...
}
而一個interace:
public Interface IMyInterface
{
MyClass PropertyOfMyClass {get;}
}
現在泛型類:
public class MyGeneric<T> where T:MyClass
{
T PropertyOfMyClass
{
get{return ...;}
}
}
直到這裏逝去的罰款和編譯權。
但是,這將打破在編譯的時候:
public class MyGeneric<T>:IMyInterace where T:MyClass
{
T PropertyOfMyClass
{
get{return ...;}
}
}
話說MyGeneric不IMyInterface的都實現方法。但顯然它確實,不是?
認爲我不明白的是,如果T是MyClass的類型或後代,那麼屬性T PropertyOfMyClass等於MyClass PropertyOfMyClass。那麼爲什麼不能編譯? – Pitming 2010-04-22 11:54:31