Лабораторная работа №1. "Создание простых классов". Создавая класс, разработчик должен понимать, что не создает код программы, а разрабатывает структуру и модель поведения какого-либо объекта, который ему будет необходим при дальнейшей разработки программы.
Создавая класс, мы оперируем абстрактными значениями (если мы создаем класс «человек», мы не создаем конкретную личность, а создаем шаблон этой личности.).
Лабораторная работа №1.docx
Создание простых классов.
Лабораторная работа №1
Создавая класс, разработчик должен понимать, что не создает код программы, а
разрабатывает структуру и модель поведения какоголибо объекта, который ему будет
необходим при дальнейшей разработки программы.
Создавая класс, мы оперируем абстрактными значениями (если мы создаем класс
«человек», мы не создаем конкретную личность, а создаем шаблон этой личности.).
Для того, чтобы создать класс Visual Studio
1. Нажимаем правой кнопкой мыши по нашему проекту.
2. В появившемся меню выбираем пункт Добавить – Класс
3. В появившемся окне указываем имя класса, например, Point.cs.
Так как мы создаем класс Point (точку), то нам необходимо задать те свойства, которые
присуще точке, это координаты по х и координаты по y.
class Point
{
public int x;
public int y;
}
Public означает, что свойство или метод общедоступно (также возможно значение private и
protected, если данное слово опустить, то считается, что указан тип private)
Int – свойство является целым числом
Теперь для того, чтобы создать точку в своей программе, мы можем написать следующий
код.
Point p = new Point(); //(1)
p.x = 10;
p.y = 5;
Данный код создает точку с именем р и координатой 10;5
Первая строчка данного примера (1) отвечает за создание переменной типа Point, путем
вызова конструктора класса Point. В нашем классе на данный момент конструктор не
создан, поэтому в строке (1) вызывается конструктор по умолчанию.
Конструктор по умолчанию присутствует в классе всегда, если в нем явно не указан хотя
бы один конструктор.
Добавим свой конструктор в данный класс. Создание конструктора ничем не отличается от создания функций, кроме 2х исключений:
1. Конструктор это функция, которая называется точно так же как и класс
2. У конструктора не указывается тип возвращаемого значения.
Так как мы работаем с классом точка, то для ее создания нам необходимо знать 2
координаты, значит наш конструктор, должен принимать 2 аргумента.
class Point
{
public int x;
public int y;
public Point (int a, int b)
{
x = a;
y = b;
}
}
Теперь, для того, чтобы создать точку, мы можем написать следующий код
Point p = new Point(10, 5);
В нашем конструкторе a и b это аргументы и они доступны только в рамках той функции,
аргументами, которой они являются. X и Y это свойства класса, поэтому мы можем
использовать их в любой функции данного класса
Что произойдет, если аргументы нашего конструктора будут не a и b, а x и y?
class Point
{
public int x;
public int y;
public Point (int x, int y)
{
x = x;
y = y;
}
}
Visual Studio напишет нам ошибку в выделенных строчках, связана она с тем, что внутри
функции х и y –это и аргументы функции и свойства класса. Мы должны явно показать,
какие из этих переменных являются свойствами класса. Делается это путем приписывания
к данной переменной ключевого слова this class Point
{
public int x;
public int y;
public Point (int x, int y)
{
this.x = x;
this.y = y;
}
}
Теперь Visual studio понимает какая переменная за что отвечает.
Создадим еще один класс Line (Линия)
Для этого повторим шаги 13
Что такое Линия?
Линия это набор из 2х точек.
Точка же–это 2е координаты. Таким образом по сути линияэто 4 координаты.
class Line
{
public int x1;
public int y1;
public int x2;
public int y2;
}
Чем неудобна данная реализация?
В предыдущей части, мы реализовали класс Точка, тем самым мы создали новый тип
данных, который можем использовать при необходимости. Тем самым нашу Линию можно
реализовать следующим образом:
class Line
{
public Point start;
public Point end;
} Задание:
1.Напишите конструктор класса Line
2.Реализуйте класс прямоугольник и эллипс.
Лабораторная работа №1
Лабораторная работа №1
Лабораторная работа №1
Лабораторная работа №1
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.