Đáp ứng một vấn đề lạ ở phép tính nói rằng một lớp không thực hiện một giao diện.Giao diện triển khai lớp chung không thành công
Hãy nói một câu có một lớp:
public Class MyClass
{
...
}
Và một interace:
public Interface IMyInterface
{
MyClass PropertyOfMyClass {get;}
}
và bây giờ là một lớp chung:
public class MyGeneric<T> where T:MyClass
{
T PropertyOfMyClass
{
get{return ...;}
}
}
Cho đến đây Everythings tốt và biên dịch đúng.
Nhưng điều này sẽ phá vỡ lúc biên soạn:
public class MyGeneric<T>:IMyInterace where T:MyClass
{
T PropertyOfMyClass
{
get{return ...;}
}
}
Nói rằng MyGeneric không làm dụng cụ phương pháp IMyInterface. Nhưng rõ ràng là vậy, phải không?
Nghĩ rằng tôi không hiểu là nếu T là loại hoặc hậu duệ của MyClass thì tài sản T PropertyOfMyClass bằng với MyClass PropertyOfMyClass. Vậy tại sao điều này không biên dịch? – Pitming