Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Введение в классы.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
90.44 Кб
Скачать

6.4.6 Добавление параметризированного метода в класс Building

С помощью параметризированного метода можно дополнить класс Building но­вым средством, позволяющим вычислять максимальное количество жильцов в здании, исходя из определенной величины минимальной площади на одного человека. Этим новым средством является приведенный ниже метод MaxOccupant().

// Возвратить максимальное количество человек, занимающих здание,

// исходя из заданной минимальной площади на одного человека.

public int MaxOccupant(int minArea)

{

return Area / minArea;

}

Когда вызывается метод MaxOccupant(), его параметр minArea принимает вели­чину необходимой минимальной площади на одного человека. На эту величину делит­ся общая площадь здания при выполнении данного метода, после чего он возвращает результат.

Ниже приведен весь класс Building, включая и метод MaxOccupant().

Листинг 6.7

/*

Добавить параметризированный метод, вычисляющий

максимальное количество человек, которые могут

занимать здание, исходя из заданной минимальной

площали на одного человека.

*/

using System;

class Building

{

public int Floors; // количество этажей

public int Area; // общая площадь здания

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

// Возвратить площадь на одного человека.

public int AreaPerPerson() {

return Area / Occupants;

}

// Возвратить максимальное количество человек, занимающих здание

// исходя из заданной минимальной площади на одного человека.

public int MaxOccupant(int minArea) {

return Area / minArea;

}

}

// Использовать метод MaxOccupant().

class BuildingDemo

{

static void Main()

{

Building house = new Building();

Building office = new Building();

// Присвоить значения полям в объекте house.

house.Occupants = 4;

house.Area = 2500;

house.Floors = 2;

// Присвоить значения полям в объекте office.

office.Occupants = 25;

office.Area = 4200;

office.Floors = 3;

Console.WriteLine("Максимальное количество человек в доме, \n" +

"если на каждого должно приходиться " +

300 + "кв. футов: " +

house.MaxOccupant(300));

Console.WriteLine("Максимальное количество человек " +

"в учреждении, \n" +

300 + "кв. футов: " +

office.MaxOccupant(300));

}

}

Выполнение этой программы дает следующий результат.

Максимальное количество человек в доме,

если на каждого должно приходиться 300 кв. футов: 8

Максимальное количество человек в учреждении,

если на каждого должно приходиться 300 кв. футов: 14

6.4.7 Исключение недоступного кода

При создании методов следует исключить ситуацию, при которой часть кода не мо­жет быть выполнена ни при каких обстоятельствах. Такой код называется недоступным и считается в C# неправильным. Если создать метод, содержащий недоступный код, компилятор выдаст предупреждающее сообщение соответствующего содержания. Рассмотрим следующий пример кода.

public void MyMeth()

{

char a, b;

// ...

if(a==b)

{

Console.WriteLine("равно") ;

return;

}

else

{

Console.WriteLine("не равно") ;

return;

}

Console.WriteLine ("это недоступный код");

}

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

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