Мегаобучалка Главная | О нас | Обратная связь


Пример выполнения практического задания



2020-02-04 376 Обсуждений (0)
Пример выполнения практического задания 0.00 из 5.00 0 оценок




Namespace ConsoleApp1

{

class Circle

{

    double x, y, R;

    public Circle ()

    {

         x = 0;

         y = 0;

         R = 1;

    }

    public Circle ( double x, double y, double R)

{

         this .x = x;

         this .y = y;

         this .R = R;

    }

    public void S()

    {

         double S = Math.PI * R * R;

         Console.WriteLine( " Площадь круга с радиусом {0} равна {1:f2} " ,R, S);

    }

}

class Program

{

    static void Main( string [] args)

    {

         Circle c1 = new Circle();

         c1.S();

         Circle c2 = new Circle(1, 1, 5);

         c2.S();

         Console.ReadKey();

    }

}

}


25) Дайте определение конструктора и деструктора. Перечислите виды конструкторов.

Задание. Создайте класс Rectangle, разработав следующие элементы класса

– поля: a, b – стороны прямоугольника;

– конструктор, позволяющий создать экземпляр класса по умолчанию для создания прямоугольника со сторонами 2 и 3;

– конструктор, позволяющий создать экземпляр класса с заданными длинами сторон;

– конструктор копирования;

– метод, позволяющий рассчитать и вывести на экран периметр прямоугольника;

– метод, позволяющий рассчитать и вывести на экран площадь прямоугольника.

Ответ

Конструктор – это специальный метод, который инициализирует объект при его создании.

Инициализация – это задание начальных параметров объектов/переменных при их создании.

Формат  конструктора:

доступ Имя_класса (список параметров)

{

//тело конструктора

}

Характеристики конструкторов:

1) имя конструктора совпадает с именем класса;

2) конструктор не может возвращать значение, даже void;

3) конструкторы могут быть перегружены (иметь одинаковые имена, но разные списки параметров).

Обычно в качестве модификатора доступа используется public, т.к. конструктор вызывается вне класса.

В классе может быть несколько конструкторов:

- конструктор с параметрами – конструктор, который принимают один или несколько параметров, чтобы инициализировать объект в момент его создания соответствующими значениями;

- конструктор по умолчанию, не принимающий аргументов, инициализирует все переменные члены, имеющие числовые типы, нулями, а члены-переменные ссылочного типа (строки, массивы, объекты классов) – null- значениями;

- конструктор копирования — конструктор, принимающий в качестве аргумента объект того же класса (или ссылку из него).

 Какой конструктор вызвать компилятор определяет по его сигнатуре (списку параметров).

Если при создании класса конструктор не был создан, то компилятор C# автоматически предоставляет конструктор по умолчанию.

Деструктор – метод, служащий для деинициализации (удалении) объекта (например, освобождение памяти).

Имя деструктора всегда такое же как и название класса.

Перед именем деструктора ставится символ ~.

Формат  деструктора:

~ Имя_класса()

{

//тело деструктора

}

Деструктор класса не имеет возвращаемого типа.
Деструктор класса имеет следующие свойства:

- деструкторы применяются только в классах;

- класс может иметь только один деструктор;

- деструкторы не могут наследоваться или перегружаться;

- деструкторы невозможно вызвать. Они запускаются автоматически;

- деструктор не принимает модификаторы и не имеет параметров.

 

Namespace ConsoleApp1

{

class Rectangle

{

    double a,b;

    //конструктор по умолчанию

    public Rectangle ()

    {

         a = 2;

         b = 3;

    }

    // конструктор с параметрами

    public Rectangle ( double a, double b)

    {

         this .a = a;

         this .b = b;

    }

    // конструктор копирования

    public Rectangle (Rectangle r)

    {

         a = r.a;

         b = r.b;

    }

    //конструктор копирования

    public void P()

    {

         double p = 2*(a + b);

         Console.WriteLine( "Периметр прямоугольника со сторонами {0} и {1} равен {2} " , a, b, p);

    }

    public void S()

    {

         double s = a * b;

         Console.WriteLine( "Площадь прямоугольника со сторонами {0} и {1} равна {2} " ,a, b,s);

    }

}

class Program

{

    static void Main( string [] args)

    {

         Rectangle rect1 = new Rectangle();

         rect1.P();

         rect1.S();

         Rectangle rect2 = new Rectangle(1,2);

         rect2.P();

         rect2.S();

         Rectangle rect3 = new Rectangle(rect2);

         rect3.P();

         rect3.S();

         Console.ReadKey();

    }

}

}


 

 

26) Опишите наследование и синтаксис наследования.

Задание. Разработайте программу, которая будет содержать два класса, базовый и производный. В первом будет метод, который будет выводить текст «Моя фамилия – ….», а во втором будет осуществляться вызов метода базового класса и вывод текста «Меня зовут …».

Ответ

Наследованиеявляется одним из фундаментальных атрибутов объектно-ориентированного программирования.

 Оно позволяет определить дочерний класс, который использует (наследует), расширяет или изменяет возможности родительского класса.

Класс, члены которого наследуются, называется базовым классом.

Класс, который наследует члены базового класса, называется производным классом. Следовательно, производный класс представляет собой специализированный вариант базового класса. Он наследует все переменные, методы, свойства и индексаторы, определяемые в базовом классе, добавляя к ним свои собственные элементы.

Объявление нового класса, который будет наследовать другой класс:

class [имя_класса] : [имя_базового_класса]
{
 // тело класса
}

                           

В классе-наследнике можно получить доступ к членам базового класса, которые объявлены как public, protected, internal и protected internal. Члены базового класса с модификатором доступа private также переходят в класс-наследник, но к ним могут иметь доступ только члены базового класса.

В C# наследование является одиночным, то есть нельзя наследоваться от двух и более классов, т.е. класс может наследовать только от одного класса, но сам может быть наследован любым количеством классов.

 



2020-02-04 376 Обсуждений (0)
Пример выполнения практического задания 0.00 из 5.00 0 оценок









Обсуждение в статье: Пример выполнения практического задания

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы...
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (376)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.005 сек.)