Đây là một tài liệu hơn là một câu hỏi thực sự. Điều này dường như chưa được giải quyết trên SO (trừ khi tôi bỏ lỡ nó), vì vậy đây là:
Hãy tưởng tượng một lớp chung có chứa một thành viên tĩnh:
class Foo<T> {
public static int member;
}
Có một cá thể mới của thành viên cho từng lớp cụ thể hay chỉ có một cá thể duy nhất cho tất cả các lớp kiểu Foo?
Nó có thể dễ dàng được xác minh bằng mã như sau:
Foo<int>.member = 1;
Foo<string>.member = 2;
Console.WriteLine (Foo<int>.member);
Kết quả là gì và hành vi này được ghi lại ở đâu?
T
được sử dụng (Foo<int>
vàFoo<string>
đại diện cho hai lớp khác nhau, và mỗi lớp sẽ có một cá thể, nhưng một số ý địnhFoo<int>
sẽ chia sẻ một phiên bản duy nhấtmember
). Để có ví dụ chi tiết hơn, hãy xem: stackoverflow.com/a/38369256/336648