Главная /
C#: ООП и классы /
Исходный модуль содержит указание используемых пространств имен System, System.Collections и определения классов: System.Collections и определения классов: class A {public virtual void Show(){Console.Write("SOS! ");}} class B:A {public new void Show(){Con
Исходный модуль содержит указание используемых пространств имен System
, System.Collections
и определения классов:
System.Collections и определения классов:
class A {public virtual void Show(){Console.Write("SOS! ");}}
class B:A {public new void Show(){Console.Write("ВСЕМ! ");} }
class C:A {public override void Show(){Console.Write("УРА! "); } }
В классе Program
определен метод Main
, в теле которого находится код:
ArrayList a = new ArrayList();
a.Add(new A()); a.Add(new B()); a.Add(new C());
for (int i=0; i<a.Count; i++)
if(a[i] is A)
((A)a[i]).Show();
Укажите результат вывода после запуска программы на компиляцию и выполнение:
вопрос
Правильный ответ:
SOS! ВСЕМ! УРА!
генерируется исключение, так как невозможно преобразовать типы ссылок
SOS! SOS! SOS!
SOS! ВЕМ! SOS!
SOS! SOS! УРА!
Сложность вопроса
88
Сложность курса: C#: ООП и классы
79
Оценить вопрос
Комментарии:
Аноним
Зачёт сдан. Иду в клуб отмечать 5 в зачётке по тесту
02 окт 2020
Аноним
спасибо
12 сен 2019
Другие ответы на вопросы из темы программирование интуит.
- # Определяемый программистом тип может быть
- # Программа предназначена для вывода на консоль строки СИДОРОВ: namespace Message { class MyPrint{ public static string View(){return "КОЗЛОВ";}} } namespace OutPut { class MyPrint { public static string View(){return "СИДОРОВ";}} } class Program { static void Main(string[] args) { System.Console.Write( _____________ ); } } Среди приведенных ниже кодов укажите код, которым необходимо заменить знаки подчеркивания для получения корректной программы, решающей поставленную задачу:
- # Класс, в заголовке которого указан модификатор internal:
- # Проанализируйте приведенный код. class Круг { protected double r = 5; public Круг(double r) { this.r = r; } public virtual int Фигура() { return (int)(3.14*r*r); } } class Цилиндр : Круг { double h = 10; public Цилиндр(double r, double h) : base(r) { this.h = h; } public override int Фигура() { return (int)(3.14*r*r*h); } } class Конус : Круг { double h = 10; public Конус(double r, double h) : base(r) { this.h = h; } public override int Фигура() { return (int)(3.14*r*r*h/3.0); } } class Program { static void Param(Круг fig) { System.Console.Write(fig.Фигура()+" "); } static void Main() { Param(new Цилиндр(2, 1)); } } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
- # Исходный модуль содержит код: enum Цвет{Красный,Зеленый,Синий,Желтый,Черный,Белый} enum Сторона{Север=3,Юг,Восток,Запад,СевероЗапад,ЮгоВосток} class Program { static void Main() { Цвет цвет=Цвет.Синий; Сторона сторона = __________ ; System.Console.WriteLine("ЭТО БУДЕТ " + (int)сторона); } } Среди перечисленных ниже вариантов инициализации укажите все варианты, подстановка каждого из которых вместо знаков подчеркивания позволяет получить корректную программу, которая выведет на консоль сообщение ЭТО БУДЕТ 5: