Синтаксис:
    
[атрибут] модификатор interface имя_интерфеса : [имя_базового_интерфеса] {
тип имя_метода (список параметров);
//члены интерфейса
}
  
   [атрибут] модификатор interface имя_интерфеса : [имя_базового_интерфеса] {
тип имя_метода (список параметров);
//члены интерфейса
}
 Main.cs 
usingSystem;publicinterfaceIResultShowInterface {-  
ushortResultShow(); }publicinterfaceISumInterface {-  
decimalSum(); }publicclassCounter : IResultShowInterface, ISumInterface {-  
ushortshowStart; -  
ushortshowEnd; -  
decimalprice; -  
publicCounter(ushortarg0,ushortarg1,decimalarg2) { -   
showStart = arg0; -   
showEnd = arg1; -   
price = arg2; -  
} -  
/*ВНИМАНИЕ!!! Метод, объявленный в интерфейсе, в классе -  
должен иметь модификатор доступа public*/ -  
publicushortResultShow() { -   
return(ushort)(showEnd-showStart); -  
} -  
/*ВНИМАНИЕ!!! Метод, объявленный в интерфейсе, в классе -  
должен иметь модификатор доступа public*/ -  
publicdecimalSum() { -   
returnMath.Round((decimal)(ResultShow()*price), 2); -  
} }classProgram {-  
publicstaticintMain() { -   
Console.WriteLine("оплата за электроэнергию\n"); -   
Console.Write("Введите начальные показания счетчика : "); -   
ushortshow_start =ushort.Parse(Console.ReadLine()); -   
Console.Write("Введите конечные показания счетчика : "); -   
ushortshow_end =ushort.Parse(Console.ReadLine()); -   
Console.Write("Введите цену за 1 кВт/ч : "); -   
decimalprice =decimal.Parse(Console.ReadLine()); -   
Counter C =newCounter(show_start, show_end, price); -   
Console.WriteLine("Сумма за электроэнергию : {0}", C.Sum()); -   
Console.ReadKey(); -   
return0; -  
} }
usingSystem;publicinterfaceIResultShowInterface {-  
ushortResultShow(); }publicinterfaceISumInterface {-  
decimalSum(); }publicclassCounter : IResultShowInterface, ISumInterface {-  
ushortshowStart; -  
ushortshowEnd; -  
decimalprice; -  
publicCounter(ushortarg0,ushortarg1,decimalarg2) { -   
showStart = arg0; -   
showEnd = arg1; -   
price = arg2; -  
} -  
/*ВНИМАНИЕ!!! Метод, объявленный в интерфейсе, в классе -  
должен иметь модификатор доступа public*/ -  
publicushortResultShow() { -   
return(ushort)(showEnd-showStart); -  
} -  
/*ВНИМАНИЕ!!! Метод, объявленный в интерфейсе, в классе -  
должен иметь модификатор доступа public*/ -  
publicdecimalSum() { -   
returnMath.Round((decimal)(ResultShow()*price), 2); -  
} }classProgram {-  
publicstaticintMain() { -   
Console.WriteLine("оплата за электроэнергию\n"); -   
Console.Write("Введите начальные показания счетчика : "); -   
ushortshow_start =ushort.Parse(Console.ReadLine()); -   
Console.Write("Введите конечные показания счетчика : "); -   
ushortshow_end =ushort.Parse(Console.ReadLine()); -   
Console.Write("Введите цену за 1 кВт/ч : "); -   
decimalprice =decimal.Parse(Console.ReadLine()); -   
Counter C =newCounter(show_start, show_end, price); -   
Console.WriteLine("Сумма за электроэнергию : {0}", C.Sum()); -   
Console.ReadKey(); -   
return0; -  
} }
    
оплата за электроэнергию
Введите начальные показания счетчика : 0
Введите конечные показания счетчика : 100
Введите цену за 1 кВт/ч : 0,3084
Сумма за электроэнергию : 30,84
       
  Введите начальные показания счетчика : 0
Введите конечные показания счетчика : 100
Введите цену за 1 кВт/ч : 0,3084
Сумма за электроэнергию : 30,84