Что касается интерфейсов, я столкнулся с следующим примером кода. Почему этот класс создает экземпляр собственного объекта в основном методе? Является ли это допустимой теорией или условным обозначением кода в C# и Java? (компилятор не жаловался ... но мне любопытно)Почему этот класс создает экземпляр собственного объекта внутри самого класса?
using System;
interface IParentInterface
{
void ParentInterfaceMethod();
}
interface IMyInterface : IParentInterface
{
void MethodToImplement();
}
class InterfaceImplementer : IMyInterface
{
static void Main()
{
InterfaceImplementer iImp = new InterfaceImplementer();
iImp.MethodToImplement();
iImp.ParentInterfaceMethod();
}
public void MethodToImplement()
{
Console.WriteLine("MethodToImplement() called.");
}
public void ParentInterfaceMethod()
{
Console.WriteLine("ParentInterfaceMethod() called.");
}
}
Почему вы думаете, что это не должно быть так? Он отлично подходит как для C#, так и для Java. –
Но, конечно, странно ставить основной метод в класс, реализующий интерфейс. Лично я бы этого не сделал. –
@ Джон Скит сказал, что это совершенно верно - да, компилятор не жаловался. Даниэль Хильгарт сказал, что это выглядит странно (тем более, что я чувствовал). Можете ли вы любезно направить меня на ссылку на образец кода или статью для чтения/экспериментирования на: * «выглядит странно, чтобы поместить основной метод в класс, который реализует интерфейс» *? – aspiring