Иерархия классов
в C#
Выполнил: Ибраимов Байэл
Класс
- производный (агрегатный)
тип данных, введённый
программистом на основе
уже существующих типов,
характеризующийся
объединением разнотипных
данных и программного кода
для их обработки
Класс - тип
данных
int
double
bool
…
класс1
класс2
Состав
класса
Члены класса – составляющие
класс атомарные единицы
Данные класса – переменные
внутри класса
Методы класса – программный код
для обработки данных (не всегда)
Определение класса
class ИмяКласса
{
доступ тип имя;
доступ тип имя(параметры)
оператор;
}
Спецификатор
ы доступа
⚫ public – доступен из любой
точки программы
⚫ private – доступен только
внутри этого же класса
⚫ protected – доступен
внутри этого же класса и
его наследников
Пример
class Human
{
public string FName, LName;
public int BirthYear;
}
Дубль два: класс – тип данных!
int = 5; // Так не бывает!
int Radius;
Radius = 5;
Human Vasya;
Vasya = ????
Объекты
Переменная, у которой тип
данных какой-либо класс –
объект (экземпляр класса)
В C# объекты доступны
только косвенно – через
ссылки
Создание ссылки и
объекта
Сначала создается ссылка,
потом обьект, чтобы
управлять памятью. С
начала создается ссылка,
чтобы зарезервировать
место для обьекта. Это
позволяет работать с кодом
без создания лишних
обьектов, что экономит
память и ускоряет
выполнение программы.
Такой подход упрощает
работу с большими
проектами.
Представление в памяти
Объект
FName
LName
BirthYear
Объект
FName
LName
BirthYear
Vasya
Petya
Заполнение данных объекта
Human Magnus = new Human();
Magnus.FName = “Магнус”;
Magnus.LName = “Карлсен”;
Magnus.BirthYear = 1990;
Пример
Наследование
► Наследование — это один
из принципов объектно-
ориентированного
программирования,
который позволяет одному
классу (называемому
производным или
дочерним) использовать
свойства и методы другого
Основные
преимущества
наследования
Уменьшение повторяющегося
кода.
Упрощение поддержки и
расширения программы.
Возможность создавать более
сложные структуры классов.
позволяет создавать производные
классы (классы наследники), взяв за
основу все методы и элементы
базового класса (класса родителя).
Объекты производного класса
свободно могут использовать всё,
что создано в базовом классе.
Пример
►1.Класс Animal содержит
общий метод Eat(), который
могут использовать все
животные.
►2.Класс Dog наследует
класс Animal, поэтому он
также может вызывать
метод Eat().
►3.Дополнительно класс Dog
добавляет свой уникальный
метод Bark()
Спасибо за
внимание!

Эффективная виртуализация и программирование на C#