- •Основные понятия ооп
- •Модификаторы доступа
- •Uml, назначение, типы диаграм.
- •Диаграмма классов
- •Деструкторы
- •Свойства
- •Индексаторы
- •Этапы проектирования класса.
- •Отношения между классами
- •Вложенные классы
- •Наследование
- •Отношения и их графическое изображение на диаграмме классов
- •Полиморфизм
- •Абстрактные классы
- •Классы без потомков
- •Интерфейсы
- •Изображение интерфейсов и абстрактных классов на диаграмме классов
- •Вложенные классы
- •Статические классы
- •Делегаты
- •Криптография и .Net
- •Сетевое программирование в c#
- •Создание простого клиент-серверного приложения используя сокеты
- •Многопоточность
- •Разработка библиотек dll
Оглавление
Основные понятия ООП 1
Модификаторы доступа 3
UML, назначение, типы диаграм. 4
Диаграмма классов 5
Методы 7
Деструкторы 8
Свойства 8
Индексаторы 10
Этапы проектирования класса. 11
Отношения между классами 11
Вложенные классы 12
Наследование 14
Отношения и их графическое изображение на диаграмме классов 16
Полиморфизм 19
Абстрактные классы 22
Классы без потомков 23
Интерфейсы 23
Изображение интерфейсов и абстрактных классов на диаграмме классов 24
Вложенные классы 25
Статические классы 26
Делегаты 27
Криптография и .NET 28
Сетевое программирование в C# 31
Создание простого клиент-серверного приложения используя сокеты 32
Многопоточность 33
Разработка библиотек dll 35
Основные понятия ооп
Объект – это любая физическая или абстрактная сущность.
Объект – это экземпляр некоторого класса объектов или просто класса. Таким образом, класс – это абстрактное понятие.
Класс можно сравнить с чертежом, согласно которому создаются объекты. Обычно классы разрабатывают таким образом, чтобы их объекты соответствовали объектам предметной области.
В языке C# класс определяется следующим образом:
[<атрибуты>] [<модификаторы>] class <идентификатор> [: <предки>]
{
<тело класса>;
}
Где:
Class – ключевое слово.
Идентификатор – определяет имя класса.
Предки – определяет классы от которых наследуется создаваемый класс.
Тело класса – содержит описание и определение методов и полей класса.
В простых случаях объявление класса может выглядеть так:
class Student
{
}
При определении класса объявляются данные (поля или атрибуты), которые он содержит, а также код (методы), оперирующий этими данными. Если самые простые классы могут содержать только код или только данные, то большинство настоящих классов содержит и то и другое.
Определим, что данные содержатся в членах данных, определяемых классом, а код — в функциях-членах.
Данные-члены — это в первую очередь поля, а также константы и события. Поля - это любые переменные, ассоциированные с классом. Поля характеризуют свойства объектов класса. Полями класса должны быть только необходимые свойства объекта, которые могут понадобиться в одном из проектов, связанных с данным классом. Поля класса существенным образом влияют на память, необходимую программной системе в процессе ее работы. Поля класса определяют следующим образом:
[<атрибуты>] [<модификаторы>] <тип> <идентификатор> [= <начальное значение>]
Где:
Тип – тип переменной определяющей поле.
Идентификатор – определяет имя класса.
Начальное значение – значение которым инициализируется поле при создании объекта данного класса.
Например:
class Student
{
string name;
string group;
int year;
}
Для класса Student – определены три поля: name – для задания ФИО студента, group – для задания группы, year для задания даты рождения студента.
Функции-члены - это члены, которые обеспечивают некоторую функциональность для манипулирования данными класса. Они включают методы, свойства, конструкторы, деструкторы, индексаторы, структуры, делегаты, интерфейсы, перечисления и т.д.
Методы - это функции, ассоциированные с определенным классом, действие, которое выполняет объект. Методы содержат описания операций, доступных над объектами класса, определяя, тем самым, поведение объектов. Есть методы, решающие специальные задачи, - конструкторы, методы-свойства и др. Методы класса определяют следующим образом:
[<атрибуты>] [<модификаторы>]<тип возвр знач><идентификатор>([<список формальных параметров>])
[{
<тело метода>
}]
Где:
Тип возвращаемого значения – определит тип значения, которое будет возвращено методом после его выполнения.
Идентификатор – определяет имя класса.
Список формальных параметров – параметры передаваемые методу при его выполнении.
Тело метода – содержит описание и определение метода.
Например:
class Student
{
string name;
string group;
int year;
public void Print()
{
Console.WriteLine("Студент {0} группы {1} родился в {2}", name , group, year);
}
}
В приведенном примере, метод Print() при вызове выполнит вывод на экран полей класса. Рассмотрим специальные методы, такие как конструктор, свойство и т.д.