The following code are implementing an interface implicitly with indexers.
The key distinction between an interface indexer and a class indexer.
using System; interface IMyInterface { int this[int index] { get; set; } } class MyClass : IMyInterface { //private int[] myIntegerArray; private int[] myIntegerArray = new int[4]; public int this[int index] {// ww w . j a v a 2 s . c o m get { return myIntegerArray[index]; } set { myIntegerArray[index] = value; } } } class Program { static void Main(string[] args) { MyClass obMyClass = new MyClass(); obMyClass[0] = 10; obMyClass[1] = 20; obMyClass[3] = 30; for (int i = 0; i < 4; i++) { Console.WriteLine("Element #{0} = {1}", i, obMyClass[i]); } } }