Доброг овремени суток, Sahikon!
[цензура

]
S>Объект типа "Человек" может покусать все что является Кусаемым. Но Кусаемое не обязано быть СъедобнымОбъектом. Интерфейс описывает только методы, которые поддерживает объект. Любое Кусаемое можно Откусить.
S>Понятно объяснил?
Да, вполне понятно!
Премного благодарен за ответы!
Если сравнивать interface с железной дорогой то можно сказать примерно так:
interface это рельсы по которым могут ездить паровозы любого типа (объекты) у которых ширина оси совпадает с расстоянием между рельсами (сигнатура и название методов у объекта соответствует сигнатуре и названиям методов у интерфейса)

-- Если тебе помогли, незабудь сказать спасибо --
-- Это всё мое личное мнение которое может не совпадать с Вашим или может быть ошибочным --
.NetCoder
данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Здравствуйте, dotnetcoder, Вы писали:
D>interface это рельсы по которым могут ездить паровозы любого типа (объекты) у которых ширина оси совпадает с расстоянием между рельсами (сигнатура и название методов у объекта соответствует сигнатуре и названиям методов у интерфейса)
Нет, интерфейс — это не рельсы, интерфейс — это таки паравоз.

... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Здравствуйте, Sahikon, Вы писали:
S>public interface Кусаемое
S>{
S>public void Откусить();
S>}
S>public class НесъедобныеОбъекты
S>{
S>}
S>public class ВкусныеОбъекты
S>{
S>}
using System;
namespace my
{
public interface Кусаемое
{
void Откусить();
}
//
public class НесъедобныеОбъекты
{
}
//
public class ВкусныеОбъекты
{
}
//
public class Ручка:НесъедобныеОбъекты,Кусаемое
{
public void Откусить()
{
Console.WriteLine ( "Тьфу какая, гадость Ручка!" );
}
}
//
public class Яблоко:ВкусныеОбъекты,Кусаемое
{
public void Откусить()
{
Console.WriteLine ( "МММ.... Вкуснятина! Яблоко" );
}
}
//
class my
{
public static void Main()
{
object[] obj = new object[2];
obj[0] = new Ручка();
obj[1] = new Яблоко();
foreach (Object obje in obj)
((Кусаемое)obje).Откусить();
}
}
}