Семантика присваивания

Написано admin в 20 Июнь 2008 – 20:49 -


Семантика присваивания

Рассмотрим присваивание:

x = e.

Чтобы присваивание было допустимым, типы переменной x и выражения e должны быть согласованными. Пусть сущность x согласно объявлению принадлежит классу T. Будем говорить, что тип T основан на классе T и является базовым типом x, так что базовый тип определяется классом объявления. Пусть теперь в рассматриваемом нами присваивании выражение e связано с объектом типа T1.

Определение: тип T1 согласован по присваиванию с базовым типом T переменной x, если класс T1 является потомком класса T.

Присваивание допустимо, если и только если имеет место согласование типов. Так как все классы в языке C# – встроенные и определенные пользователем – по определению являются потомками класса Object, то отсюда и следует наш частный случай – переменным класса Object можно присваивать выражения любого типа. Read more »


Tags: , , , , , , , , , , ,
Находится в Учебник | No Comments »

Урок 3. Добавляем событие

Написано admin в 14 Июнь 2008 – 14:47 -


Урок 3. Добавляем событие

У любого компонента могут присутствовать свойства (это мы уже посмотрели, как делать), методы (это будет на следующих уроках) и события (которыми мы как раз сейчас и займемся).

Событие – это уведомление от компонента, в котором он информирует кого-либо, что с ним что-то произошло. Типичный пример события – это щелчок на кнопке. В этом случае кнопка информирует свой контейнер (т. е. форму, на которой она расположена), что на ней щелкнули и контейнер выполняет код, предназначенный для выполнения этом случае. Обратите внимание, что в этом случае код выполяемый при возникновении события находится не в самом компоненте, а в другом месте (контейнере в данном случае). Т. е. разработчик компонента в принипе не знает, что будет выполняться при возникновении события, и будет ли выполняться вообще. Задача разработчика компонента – только это событие возбудить, а вот обработка этого события – это уже не его дело.

Итак, сейчас мы добавим событие WrongColor, которое будет возникать, когда пользователь установит цвет надписи, совпадающей с цветом фона. Надпись будет не видна, и в этом случае и возникнет добавленное нами событие. Read more »


Tags: , , , , , , , ,
Находится в Компоненты C# | No Comments »

C# — язык программирования, сочетающий объектно-ориентированные и аспектно-ориентированные концепции. Разработан в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как основной язык разработки приложений для платформы Microsoft .NET. Компилятор с C# входит в стандартную установку самой .NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств вроде Visual Studio. компьютеры 205 55 r16 C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к С++ и Java. Язык имеет строгую статическую типизацию, поддерживает полиморфизм, перегрузку операторов, указатели на функции-члены классов, атрибуты, события, свойства, исключения, комментарии в формате XML. Переняв многое от своих предшественников — языков С++, Java, Delphi, Модула и Smalltalk — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем: так, C# не поддерживает множественное наследование классов (в отличие от C++).