Tài liệu Indexers in Interfaces pdf

2 210 0
Tài liệu Indexers in Interfaces pdf

Đang tải... (xem toàn văn)

Thông tin tài liệu

Indexers in Interfaces You can declare indexers in an interface. To do this, specify the get and/or set keyword, but replace the body of the get or set accessor with a semicolon. Any class or struct that implements the interface must implement the indexer accessors declared in the interface. For example: interface IRawInt { bool this [ int index ] { get; set; } } struct RawInt : IRawInt { public bool this [ int index ] { get { } set { } } } If you implement the interface indexer in a class, you can declare the indexer implementations as virtual. This allows further derived classes to override the get and set accessors. For example: class RawInt : IRawInt { public virtual bool this [ int index ] { get { } set { } } } You can also choose to implement an indexer by using the explicit interface implementation syntax covered in Chapter 12, “Working with Inheritance.” An explicit implementation of an indexer is non-public and non-virtual (and so cannot be overridden). For example: struct RawInt : IRawInt { bool IRawInt.this [ int index ] { get { } set { } } } . Indexers in Interfaces You can declare indexers in an interface. To do this, specify the get and/or set. implements the interface must implement the indexer accessors declared in the interface. For example: interface IRawInt { bool this [ int index ] { get;

Ngày đăng: 26/01/2014, 13:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan