Главная » Java, Структуры данных и алгоритмы » Интерфейсы и абстрактные классы

0

Для того чтобы два объекта могли взаимодействовать, они должны «знать», какие типы сообщений может принимать каждый из объектов, то есть какие методы поддерживает каждый из них. Для обеспечения подобного «знания» в парадигме объектно-ориентированного программирования классы должны содержать интерфейс прикладного программирования[7] (ИПП), или просто интерфейс, который объекты данного класса будут представлять для других объектов. В книге структуры данных рассматриваются, исходя из понятия абстрактных типов данных, и интерфейс, который в свою очередь описывает АТД, содержит описание типа данных и методы работы с данными этого типа, а также с аргументами соответствующего типа для каждого метода. Такое соответствие обусловлено особенностями компилятора или исполняющей системы, которые требуют, чтобы тип передаваемых в метод параметров точно соответствовал типу, указанному в интерфейсе. Данное требование называется правилом строгого контроля типов. Безусловно, работа программиста усложняется необходимостью создания описаний интерфейсов, а затем строгого контроля типов данных в этих описаниях, тем не менее подобные сложности компенсируются преимуществами такого подхода в дальнейшем, а именно — использование принципа инкапсуляции и перехват ошибок программирования, которые в противном случае не были бы замечены.

Источник: Гудрич М.Т. Г93 Структуры данных и алгоритмы в Java / М.Т. Гудрич, Р. Тамассия; Пер. с англ. A.M. Чернухо. — Мн.: Новое знание, 2003. — 671 е.: ил.

По теме:

  • Комментарии