Читаем C# 4.0 полное руководство - 2011 полностью

class Building {

public int Floors; // количество этажей public int Area;    // общая площадь здания

public int Occupants; // количество жильцов

}

// В этом классе объявляются два объекта типа Building, class BuildingDemo { static void Main {

Building house = new Building;

Building office = new BuildingO;

int areaPP; // площадь на одного человека

// Присвоить значения полям в объекте house, house.Occupants = 4; house.Area = 2500; house.Floors = 2;

// Присвоить значения полям в объекте office, office.Occupants = 25; office.Area = 4200; office.Floors = 3;

// Вычислить площадь на одного человека в жилом доме. areaPP = house.Area / house.Occupants;

Console.WriteLine("Дом имеет:\n " +

house.Floors + " этажа\п " + house.Occupants + " жильца\п " + house.Area +

" кв. футов общей площади, из них\п " + areaPP + " приходится на одного человека");

// Вычислить площадь на одного человека в учреждении. areaPP = office.Area / office.Occupants;

Console.WriteLine("Учреждение имеет:\n    "    +

office.Floors + " этажа\п " +

office.Occupants + " работников\п " +

office.Area +

" кв. футов общей площади, из них\п " + areaPP + " приходится на одного человека");

}

}

Ниже приведен результат выполнения этой программы.

Дом имеет:

2 этажа

4 жильца

2500 кв. футов общей площади, из них 625 приходится на одного человека

Учреждение имеет:

3 этажа 25 работников

4200 кв. фу^ов общей площади, из них 168 приходится на одного человека

Как видите, данные из объектаhouseполностью отделены от данных, содержащихся в объектеoffice.Эта ситуация наглядно показана на рис. 6.1.

Рис. 6.1. Переменные экземпляра одного объекта полностью отделены от переменных экземпляра другого объекта

Создание объектов

В предыдущих примерах программ для объявления объекта типаBuildingиспользовалась следующая строка кода.

Building house = new Building;

Эта строка объявления выполняет три функции. Во-первых, объявляется переменнаяhouse,относящаяся к типу классаBuilding.Сама эта переменная не является объектом, а лишь переменной, которая можетссылатьсяна объект. Во-вторых, создается конкретная, физическая, копия объекта. Это делается с помощью оператораnew.И наконец, переменнойhouseприсваивается ссылка на данный объект. Таким образом, после выполнения анализируемой строки объявленная переменнаяhouseссылается на объект типаBuilding.

Операторnewдинамически (т.е. во время выполнения) распределяет память для объекта и возвращает ссылку на него, которая затем сохраняется в переменной. Следовательно, в C# для объектов всех классов должна быть динамически распределена память.

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

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

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

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

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

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

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

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

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