Лабораторная работа 1 Создание простых классов
Скачать 17.01 Kb.
|
Лабораторная работа №1 Создание простых классов. Создавая класс, разработчик должен понимать, что не создает код программы, а разрабатывает структуру и модель поведения какого-либо объекта, который ему будет необходим при дальнейшей разработки программы. Создавая класс, мы оперируем абстрактными значениями (если мы создаем класс «человек», мы не создаем конкретную личность, а создаем шаблон этой личности.). Для того, чтобы создать класс Visual Studio
Так как мы создаем класс 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-х исключений:
Так как мы работаем с классом точка, то для ее создания нам необходимо знать 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 (Линия) Для этого повторим шаги 1-3 Что такое Линия? Линия- это набор из 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.Реализуйте класс прямоугольник и эллипс. |