Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Анализ предметной области






 

В библиотеке классов.NET определено множество стандартных интерфейсов, задающих желаемое поведение объектов. Например, интерфейс IComparable задает метод сравнения объектов на больше-меньше, что позволяет выполнять их сортировку. Реализация интерфейсов IEnumerable и IEnumerator дает возможность просматривать содержимое объекта с помощью конструкции foreach, а реализация интерфейса ICloneable — клонировать объекты.

Стандартные интерфейсы поддерживаются многими стандартными классами библиотеки. Например, работа с массивами с помощью цикла foreach возможна именно потому, что тип Array реализует интерфейсы IEnumerable и IEnumerator. Можно создавать и собственные классы, поддерживающие стандартные интерфейсы, что позволит использовать объекты этих классов стандартными способами.

Интерфейс IComparer определен в пространстве имен System.Collections. Он содержит один метод Compare, возвращающий результат сравнения двух объектов, переданных ему в качестве параметров:

interface IComparer{ int Compare(object ob1, object ob2)}

Принцип применения этого интерфейса состоит в там, что для каждого критерия сортировки объектов описывается небольшой вспомогательный класс, реализующий этот интерфейс. Объект этого класса передается в стандартный метод сортировки массива в качестве второго аргумента.

 

 

Т а б л и ц а 1 - Стандартные интерфейсы

Интерфейс Описание
ICollection Определяет элементы, которые должны иметь все необобщенные коллекции
IComparer Определяет метод Compare() для сравнения объектов, хранящихся в коллекции
IDictionary Определяет коллекцию, состоящую из пар " ключ-значение"
IDictionaryEnumerator Определяет перечислитель для коллекции, реализующей интерфейс IDictionary
IEnumerable Определяет метод GetEnumerator(), предоставляющий перечислитель для любого класса коллекции
IEnumerator Предоставляет методы, позволяющие получать содержимое коллекции по очереди
IEqualityComparer Сравнивает два объекта на предмет равенства
IHashCodeProvider Считается устаревшим. Вместо него следует использовать интерфейс IEqualityComparer
IList Определяет коллекцию
IStructuraIComparable Определяет метод CompareTo.
IStructuralEquatable Определяет метод Equals(), применяемый для выяснения структурного, а не ссылочного равенства. Кроме того, определяет метод GetHashCode()

Создание приложения






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.