Похожие презентации:
Классы C#
1.
Класс – тип данных, определяемый пользователем.Класс
предоставляет
определение
для
динамически
создаваемых экземпляров класса, которые также именуются
объектами.
Определение класса:
class имя_класса
{
cписок_членов_класса
}
2.
Вся функциональность класса представлена его членами:Константы
константные значения, связанные с классом.
Поля
переменные класса
Методы
вычисления и действия, которые может выполнять класс
События
действия, связанные с чтением и записью именованных свойств
класса
действия, реализующие индексирование экземпляров класса, чтобы
обращаться к ним как к массиву.
уведомления, которые могут быть созданы этим классом
Операторы
поддерживаемые классом операторы преобразования и выражения.
Конструкторы
методы, вызываемые при создании объекта.
Методы
завершения
действия, выполняемые перед окончательным удалением
экземпляров класса.
Свойства
Индексаторы
3.
Стратегии доступа к членам классаpublic
private
protected
internal
protected
internal
private
protected
публичный, общедоступный класс или член класса. Такой член класса доступен
из любого места в коде, а также из других программ и сборок
закрытый класс или член класса. Представляет полную противоположность
модификатору public. Такой закрытый класс или член класса доступен только из
кода в том же классе или контексте.
такой член класса доступен из любого места в текущем классе или в
производных классах. При этом производные классы могут располагаться в
других сборках
класс и члены класса с подобным модификатором доступны из любого места
кода в той же сборке, однако он недоступен для других программ и сборок (как в
случае с модификатором public).
совмещает функционал двух модификаторов. Классы и члены класса с таким
модификатором доступны из текущей сборки и из производных классов
такой член класса доступен из любого места в текущем классе или в
производных классах, которые определены в той же сборке.
4.
1) для любого члена класса или объектного типа разрешеноуказывать только один модификатор доступа, за исключением
комбинации protected internal, регламентирующей ограничение
доступа наследуемыми классами текущего проекта.
2) если для полей и методов не определен модификатор доступа,
то по умолчанию для них применяется модификатор private.
3) классы и структуры, объявленные без модификатора, по
умолчанию имеют доступ internal.
5.
Конструктор (от слова construct — создавать) – это специальныйметод класса, который предназначен для инициализации элементов
класса некоторыми начальными значениями.
модификатор видимости <имя_класса>(параметы)
{
//тело конструктора
}
6.
Конструктор вызывается компилятором неявно каждыйраз, когда объект класса создается оператором new.
В объявлении конструктора его имя совпадает с
именем класса.
Конструкторов в классе может быть множество.
Существует 3 вида конструкторов:
✓ конструктор по умолчанию (без параметров);
✓ конструктор с параметрами;
✓ конструктор копии.
7.
Деструктор (от слова destruct — разрушать) — специальный методкласса, который служит для уничтожения элементов класса.
~ <имя_класса>()
{
//тело конструктора
}
8.
Деструктор вызывается во всех случаях, когда объектдолжен быть удален из памяти.
Деструктор не принимает никаких параметров и не
возвращает никаких значений.
Класс может иметь только один деструктор.
Типичная ошибка программирования. Попытки
передать аргументы деструктору, вернуть значение из
деструктора.
9.
Объект – это конкретный представитель класса.Синтаксис создания объекта класса:
Имя_класса
имя_объекта=new имя_класса(параметры);
Доступ к открытым членам класса осуществляется следующим образом:
.имя_метода(передаваемые параметры);
имя_объекта.имя_переменной;
имя_объекта
Передаваемые параметры должны совпадать с конструктором.
Если конструктор отсутствует в классе, то автоматически создается
конструктор по умолчанию.
10.
Пример:class Gruppa
{
//поля класса
string name;
public int count;
public int kurs;
11.
//конструктор с параметрамиpublic Gruppa(string name, int count, int kurs)
{
this.name = name;
this.count = count;
this.kurs = kurs;
}
12.
//конструктор по умолчаниюpublic Gruppa()
{
name = "24П";
count = 28;
kurs = 3;
}
13.
//конструктор копииpublic Gruppa(Gruppa gr)
{
name = gr.name;
count = gr.count;
kurs = gr.kurs;
}
14.
// метод вывода информацииpublic void Info()
{
Console.WriteLine("\nГруппа: " + name);
Console.WriteLine("Курс: " + kurs);
Console.WriteLine("Кол-во учащихся: "+count);
}
15.
static void Main(string[] args){
Gruppa gruppa1 = new Gruppa();
gruppa1.Info();
Gruppa gruppa2 = new Gruppa("23П", 23, 3);
gruppa2.Info();
Gruppa gruppa3 = new Gruppa(gruppa1);
gruppa3.Info();
gruppa1.kurs = 4;
gruppa1.Info();
Console.ReadKey();
}
Программирование