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

Интерфейс IComparable реализуется чрезвычайно просто, потому что он состоит всего лишь из одного метода.

int CompareTo(objectobj)   /

В этом методе значение вызывающего объекта сравнивается со значением объекта, определяемого параметромobj.Если значение вызывающего объекта больше, чем у объекта obj, то возвращается положительное значение; если оба значения равны — нулевое значение, а если значение вызывающего объекта меньше, чем у объектаobj, — отрицательное значение.

Обобщенный вариант интерфейса IComparable объявляется следующим образом.

public interface IComparable

В данном варианте тип сравниваемых данных передается параметру Т в качестве аргумента типа. В силу этого объявление метода CompareTo претерпевает изменения и выглядит так, как показано ниже.

int CompareTo(Тother)

В этом объявлении тип данных, которыми оперирует метод CompareTo , может быть указан явным образом. Следовательно, интерфейс IComparable обеспечивает типовую безопасность. Именно по этой причине он теперь считается более предпочтительным в программировании на С#, чем интерфейс IComparable.

Интерфейс IEquatable

Интерфейс IEquatable реализуется в тех классах, где требуется определить порядок сравнения двух объектов на равенство их значений. В этом интерфейсе определен только один метод, Equals , объявление которого приведено ниже.

bool Equals(Тother)

Этот метод возвращает логическое значениеtrue,если значение вызывающего объекта оказывается равным значению другого объектаother, в противном случае — логическое значениеfalse.

ИнтерфейсIEquatableреализуется в нескольких классах и структурах среды .NET Framework, включая структуры числовых типов и классString.Для реализации интерфейсаIEquatableобычно требуется также переопределять методыEquals (Object)иGetHashCode , определенные в классеObject.

Интерфейс IConvertible

ИнтерфейсIConvertibleреализуется в структурах всех типов значений,StringиDateTime.В нем определяются различные преобразования типов. Реализовывать этот интерфейс в создаваемых пользователем классах, как правило, не требуется.

Интерфейс ICloneable

Реализовав интерфейсICloneable,можно создать все условия для копирования объекта. В интерфейсеICloneableопределен только один метод,Clone , объявление которого приведено ниже.

object Clone

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

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

Access 2002: Самоучитель
Access 2002: Самоучитель

В книге рассматривается широкий круг вопросов, связанных с использованием программной среды Access 2002, которая является составной частью пакета Office 2002 и предназначена для создания банка данных в самых различных предметных областях.Подробно описывается методика проектирования объектов базы данных (таблицы, формы, отчеты, страницы доступа к данным, запросы, модули).Детально обсуждаются вопросы создания интегрированной базы данных в единой среде Access 2002: формирование БД с нуля, конвертирование в программную среду баз данных, созданных в ином программном окружении – Clarion, FoxPro.Особое внимание уделяется формированию разнообразных запросов к интегрированной базе данных Access 2002 с использованием языков программирования SQL, VBA и макросов.Приводятся общие сведения о возможностях языка обмена данными между различными компьютерами и приложениями (XML). Описываются возможности использования гиперссылок, связывающих базу данных с другими программными продуктами. Объясняется, как можно работать с базой данных Access 2002 без установки ее на компьютер, используя технологию ODBC (Open Data Base Connectivity). В приложениях приводятся количественные параметры Access 2002 и связанная с этой СУБД терминология.Предлагаемая книга будет полезна специалистам, занимающимся практической разработкой банков данных и приложений на их основе, а также студентам вузов, изучающим информатику.

Павел Юрьевич Дубнов

Программирование, программы, базы данных / ОС и Сети / Книги по IT