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

public void SetStart(int x) { start = x; val = start;

Как видите, в классе ByTwos реализуются три метода, определяемых в интерфейсе ISeries. Как пояснялось выше, это приходится делать потому, что в классе нельзя реализовать интерфейс частично.

Ниже приведен код класса, в котором демонстрируется применение класса ByTwos, реализующего интерфейс ISeries.

// Продемонстрировать применение класса ByTwos, реализующего интерфейс, using System;

class SeriesDemo { static void Main {

ByTwos ob = new ByTwos;    /

for (int i=0; i < 5; i++)

Console .WriteLine ("Следующее число равно " + ob. GetNext ) ;

Console.WriteLine("ХпСбросить") ; ob.Reset;

for(int i=0; i < 5; i++)

Console.WriteLine("Следующее число равно " + ob.GetNext);

Console.WriteLine("ХпНачать с числа 100");

ob.SetStart(100);

for(int i=0; i < 5; i++)

Console.WriteLine("Следующее число равно " + ob.GetNext);

}

}

Для того чтобы скомпилировать код класса SeriesDemo, необходимо включить в компиляцию файлы, содержащие интерфейс ISeries, а также классы ByTwos и SeriesDemo. Компилятор автоматически скомпилирует все три файла и сформирует из них окончательный исполняемый файл. Так, если эти файлы называются ISeries . cs, ByTwos . cs и SeriesDemo. cs, то программа будет скомпилирована в следующей командной строке:

>csc SeriesDemo.cs ISeries.cs ByTwos.cs

В интегрированной среде разработки Visual Studio для этой цели достаточно ввести все три упомянутых выше файла в конкретный проект С#. Кроме того, все три компилируемых элемента (интерфейс и оба класса) допускается включать в единый файл. Ниже приведен результат выполнения скомпилированного кода.

Следующее число равно 2 Следующее число равно 4 Следующее число равно 6 Следующее число равно 8 Следующее число равно 10

Сбросить.

Следующее число равно 2 Следующее число равно 4 Следующее число равно 6 Следующее число равно 8 Следующее число равно 10

Начать с числа 100.

Следующее число равно 102 Следующее число равно 104 Следующее число равно 106 Следующее число равно 108 Следующее число равно 110

В классах, реализующих интерфейсы, разрешается и часто практикуется определять их собственные дополнительные члены. В качестве примера ниже приведен другой вариант классаByTwos,в который добавлен методGetPrevious , возвращающий предыдущее значение.

// Реализовать интерфейс ISeries и добавить в // класс ByTwos метод GetPrevious.

class ByTwos : ISeries {

int start;

int val;

int prev;

public ByTwos    {

start = 0; val = 0; prev = -2;

}

public int GetNextO { prev = val; val += 2; return val;

}

public void Reset    {

val = start; prev = start - 2;

}

public void SetStart(int x) { start = x; val = start; prev = val - 2;

}

// Метод, не указанный в интерфейсе ISeries.

public int GetPrevious    {

return prev;

}

}

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

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

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

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

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

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

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

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

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