Читаем C#. Объектно ориентированное программирование полностью

этих констант. Константы из перечисления указываются вместе с именем

перечисления и отделяются от него точкой. Забегая вперед отметим, что

щелчок на кнопке ОК означает, что метод MessageBox.Show() в качестве ре-

зультата вернет значение DialogResult.OK.

Командой res=MessageBox.Show(txt+count,cpt,MessageBoxButtons.OKCancel) отображается окно с двумя кнопками. Текст в окне содержит текущее зна-

чение счетчика count, а константа MessageBoxButtons.OKCancel в качестве

третьего аргумента метода MessageBox.Show()означает, что у окна должно

быть две кнопки (названия кнопок определяются по умолчанию как для

системных кнопок подтверждения и отмены). После того как окно будет

закрыто щелчком на кнопке ОК, кнопке Отмена или системной пиктограм-

ме (все равно что кнопка Отмена), в переменную res будет записан резуль-

тат. Этот результат мы проверяем в условном операторе. Если условие

res==DialogResult.OK выполнено (значение переменной res равно Dialog­

Result.OK), снова вызывается метод ShowForm(), в результате чего открыва-

ется еще одно окно, и т. д.

Обратите внимание на то, что мы в методе ShowForm() вызываем (при

определенных условиях) метод ShowForm(), то есть метод вызывается

в самом себе. Такая ситуация называется рекурсией или рекурсивным

вызовом. Это разрешено, но очень опасно.

Главный метод программы в классе StaticDemo состоит всего из одной

команды MyForms.ShowForm(), которой вызывается статический метод

ShowForm() из класса MyForms. В результате отображается окно, представ-

ленное на рис. 2.8.

Дальнейшие события определяются поведением пользователя. Если щел-

кнуть на кнопке Отмена, все сразу прекратится. Если несколько раз щел-

кнуть на кнопке ОК, можно увидеть, например, окно, как на рис. 2.9.

Статические члены класса           97

Рис. 2.8.  Так выглядит окно при запуске программы

Рис. 2.9.  Так может выглядеть окно после нескольких щелчков

на кнопке ОК: номер окна изменился

Принципиальное его отличие от своих предшественников — номер, кото-

рый красуется в текстовом сообщении в области окна.

На этом мы закончим обсуждение статических членов. Мы еще будем

с ними встречаться, но особо большого внимания уделять им не будем. Тем

не менее в C# в плане работы со статичными членами есть уникальные

и экзотические моменты — например, статические конструкторы, которые

описываются с ключевым словом static и вызываются при загрузке про-

граммного кода класса в память. Но эта тема — для другой книги.

Основы синтаксиса

языка C#

Как полон я любви, как чуден милой лик,

Как много я б сказал и как мой нем язык!

О. Хайям

Не только классы представляют интерес в языке программирования C#.

В нем много других интересных и полезных вещей — и мы сейчас о них

узнаем.

Базовые типы данных

и основные операторы

— А почему он роет на дороге?

— Да потому, что в других местах все уже

перерыто и пересеяно.

Из к/ф «31 июня»

Чтобы понять, что в принципе можно делать с данными в программе, же-

лательно сначала выяснить, какими эти данные могут быть. И в этом деле

не обойтись без рассмотрения базовых типов данных. Благо, с некоторыми

из них мы уже знакомы: это, например, символьный тип char, целочислен-

Базовые типы данных и основные операторы            99

ный тип int или числовой тип с плавающей точкой double. Более полное

представление о базовых типах языка C# дает табл. 3.1.

ПРИМЕЧАНИЕ Для каждого базового (или примитивного) типа данных в C# есть

класс-оболочка. Через такие классы реализуются данные соответ-

ствующих типов, но уже как объекты. Хотя наличие классов-оболочек

на первый взгляд может показаться излишним, на практике это до-

статочно удобно, поскольку через такие классы реализуются многие

полезные методы для работы с данными. В табл. 3.1, кроме прочего, приведены и классы-оболочки для базовых типов данных.

Таблица 3.1.  Базовые типы C#

Тип

Класс

Биты

Значения

Описание

byte

Byte

8

от 0 до 255

Целые неотрицательные

числа

sbyte

SByte

8

от –128 до 127

Целые числа

short

Int16

16

от –32768 до 32767

Целые числа

ushort

UInt16

16

от 0 до 65535

Целые неотрицательные

числа

int

Int32

32

от –2147483648 до 2147483647 Целые числа

uint

UInt32

32

от 0 до 4294967295

Целые неотрицательные

числа

long

Int64

64

от –9223372036854775808 до

Целые числа

9223372036854775807

ulong

UInt64

64

от 0 до 18446744073709551615 Целые неотрицательные

числа

float

Single

32

от 1.5E-45 до 3.4E+38

Действительные числа

double

Double

64

от 5E-324 до 1.7E+308

Действительные числа

decimal Decimal

128

от 1E-28 до 7.9E+28

Действительные чис-

ла — специальный тип

для выполнения особо

точных (финансовых)

вычислений

char

Char

16

от 0 до 65535

Символьный тип

bool

Boolean

8

значения true и false

Логический тип

100

Глава 3. Основы синтаксиса языка C#

Основную массу базовых (примитивных) типов составляют числовые

типы. Только непосредственно целочисленных типов восемь, плюс три

для действительных чисел. Нечисловыми являются лишь логический тип

bool и символьный тип char — да и тот представляет собой специальный

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных