#интерфейс не может иметь полей


====== #объявление методов в интерфейсе не может иметь модификаторов доступности


Download 116.47 Kb.
bet4/46
Sana13.02.2023
Hajmi116.47 Kb.
#1195380
1   2   3   4   5   6   7   8   9   ...   46
======
#объявление методов в интерфейсе не может иметь модификаторов доступности 

======
класс Человек не полностью реализует интерфейс 


======
интерфейс IЧеловек недоступен для реализации в классе Человек 


======
для обращения к методам Имя() и Фамилия() необходимо создать объект типа IЧеловек 


++++++
Исходный модуль содержит код:

interface IЧеловек
{ string Фамилия(); string Должность(); }
class Человек { public string фамилия; }
class Сотрудник : IЧеловек,Человек
{
public string должность;
public string Фамилия() {return фамилия;}
public string Должность() { return должность; }
}
class Program
{
static void Main()
{
Сотрудник с = new Сотрудник();
с.фамилия = "Иванов"; с.должность = "Инженер";
System.Console.Write(с.Фамилия()+с.Должность());
}
}
Метод Main разрабатывался для вывода фамилии и должности сотрудника.
Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:


======
класс Человек не может иметь открытых полей 


======
класс Сотрудник не может иметь открытых полей 


======
объявление метода Фамилия() в интерфейсе должно содержать модификатор public 




======
#в определении класса Сотрудник имя базового класса должно предшествовать имени реализуемого интерфейса 
++++++

Проанализируйте приведенный код.



interface Интерфейс { int Метод(); }
class Класс1 : Интерфейс
{ int len;
public Класс1(int l) { len = l; }
public int Метод() { return len * len; }
}
class Класс2 : Класс1
{ int w, h;
public Класс2(int w1, int h1) : base (w1) { w = w1; h = h1; }
new public int Метод() { return w * h; }
}
class Test
{ public static void Main()
{ Класс2 объект1 = new Класс2(5, 10);
Интерфейс объект2 = объект1;
System.Console.WriteLine("Значение1={0} Значение2={1}",
объект1.Метод(), объект2.Метод());
} }

Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:

======
Значение1=50 Значение2=50 





Download 116.47 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   46




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling