Где здесь ошибка? Я не могу понять.
interface IMesaj{
string mesaj;
public void Yaz()
{
Console.WriteLine(mesaj);
}
void Yaz(string mesaj);
}
Где здесь ошибка? Я не могу понять.
interface IMesaj{
string mesaj;
public void Yaz()
{
Console.WriteLine(mesaj);
}
void Yaz(string mesaj);
}
string mesaj;
В интерфейсе можно объявлять только свойства и методы. Никаких полей.
public void Yaz()
В интерфейсе всё публично, поэтому никаких явных public.
{ Console.WriteLine(mesaj); }
Интерфейс не может содержать никаких реализаций, только объявления.
Элементами интерфейса могут быть методы, свойства, события и индексаторы.
Интерфейсы не могут содержать константы, поля, операторы, конструкторы, деструкторы или типы, а также любые статические элементы.
Элементы интерфейса не могут быть объявлены с модификаторами abstract, public, protected, internal, private, virtual, override и static.
Поэтому данное объявление интерфейса
interface IMesaj{
string mesaj;
public void Yaz()
{
Console.WriteLine(mesaj);
}
void Yaz(string mesaj);
}
некорректное так как, во-первых, оно содержит объявление поля string mesaj, а, во-вторых, содержит определение метода Yaz, к тому же имеющего модификатор public.
string mesaj; public void Yaz() { Console.WriteLine(mesaj); }- в данном коде нет ошибки – Grundy Mar 27 '17 at 08:42