Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ProgBasics_lec05-6_class_members

.pdf
Скачиваний:
9
Добавлен:
14.04.2015
Размер:
480.56 Кб
Скачать

class A

{

public A()

{

PrintFields();

}

public virtual void PrintFields() { }

}

class B : A

{

int x = 1; int y; public B()

{

y = -1;

}

public override void PrintFields()

{

Console.WriteLine("x = {0}, y = {1}", x, y);

}

}

Конструктор по-умолчанию

class Person

{

string name;

}

равносильно

public Person() : base() { }

private-конструкторы

public class Color

{

private byte val; private Color(byte val)

{

this.val = val;

}

public static readonly Color Red = new Color(0);

public static readonly Color Green = new Color(1); public static readonly Color Blue = new Color(2);

}

Конструктор с опциональными параметрами

class Text

{

public Text() : this(0, 0, null) { }

public Text(int x, int y) : this(x, y, null) { } public Text(int x, int y, string s)

{

// Реализация конструктора

}

}

Свойства

Свойство – элемент класса, предоставляющий доступ к характеристикам класса или класса.

Примеры таких характеристик:

длина строки

размер шрифта

имя клиента

Свойство != данные

Свойство – набор методов доступа к полю

(accessors).

Эти методы позволяют определить действия, выполняющиеся при чтении и (или) изменения значения соответствующего поля.

Объявление

[модификаторы] <тип> <имя>

{

<get-accessor>[set-accessor] (opt) <set-accessor>[get-accessor] (opt)

}

Accessors

get – получает значение поля

set – устанавливает значение поля

Возможно использовать только один аксессор.

[access-modifier]<accessor> { body }

Свойства

Свойство, у которого определён только метод get – «только для чтения», read-only

Свойство у которого определён только метод set – «только для записи», write-only

public class Button : Control

{

private string caption; public string Caption

{

get

{

return caption;

}

set

{

if (caption != value)

{

caption = value; Repaint();

}

}

}

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]