using System; interface ICube { // Property signatures: int x { get; set; } } class Cube : ICube { // Fields: private int _x; // Constructor: public Cube(int x) { _x = x * x * x; } // Property implementation: public int x { get { return _x; } set { _x = value; } } } class MainClass //or Program { static void PrintCube(ICube p) { Console.WriteLine("x={0}", p.x); } static void Main() { int a = 100; Cube p = new Cube(a); Console.Write("My Cube: "); PrintCube(p); } }