Основы программирования — второй семестр 08-09; Михалкович С.С.; V часть — различия между версиями
Admin (обсуждение | вклад) |
Admin (обсуждение | вклад) (→Абстрактные типы данных) |
||
Строка 11: | Строка 11: | ||
Каждый тип данных характеризуется: | Каждый тип данных характеризуется: | ||
набором допустимых значений; | набором допустимых значений; | ||
− | |||
тем, как эти значения хранятся в памяти; | тем, как эти значения хранятся в памяти; | ||
+ | операциями, которые можно выполнять над данными этого типа. | ||
− | |||
Абстрактный тип данных - это тип данных, доступ к которым осуществляется только через некоторый набор действий (операций, подпрограмм). Этот набор действий называется интерфейсом абстрактного типа данных. По существу, абстрактный тип данных - это интерфейс, набор операций. Для того, чтобы абстрактным типом данных можно было пользоваться, необходимо реализовать все операции, входящие в его интерфейс. | Абстрактный тип данных - это тип данных, доступ к которым осуществляется только через некоторый набор действий (операций, подпрограмм). Этот набор действий называется интерфейсом абстрактного типа данных. По существу, абстрактный тип данных - это интерфейс, набор операций. Для того, чтобы абстрактным типом данных можно было пользоваться, необходимо реализовать все операции, входящие в его интерфейс. | ||
С точки зрения клиента, использующего тип данных, важны лишь операции, которые можно выполнять над объектами этого типа, т.е. важен только интерфейс. Реализация должна быть скрыта от клиента (принцип сокрытия реализации). | С точки зрения клиента, использующего тип данных, важны лишь операции, которые можно выполнять над объектами этого типа, т.е. важен только интерфейс. Реализация должна быть скрыта от клиента (принцип сокрытия реализации). |
Версия 21:32, 31 марта 2009
Что известно о классах к настоящему моменту:
- Класс - тип данных
- Класс, как и запись, содержит поля и методы
- Переменная типа класс и переменная типа запись по-разному хранятся в памяти (ссылочная и размерная организация данных)
- Для создания объекта класса и связывания его с переменной класса вызывается специальная функция-метод, называемая конструктором
Абстрактные типы данных
Класс является реализацией более общей концепции абстрактного типа данных (АТД).
До сих пор мы сталкивались с конкретными типами данных, простыми или составными (массивы, записи, списки). Каждый тип данных характеризуется: набором допустимых значений; тем, как эти значения хранятся в памяти; операциями, которые можно выполнять над данными этого типа.
Абстрактный тип данных - это тип данных, доступ к которым осуществляется только через некоторый набор действий (операций, подпрограмм). Этот набор действий называется интерфейсом абстрактного типа данных. По существу, абстрактный тип данных - это интерфейс, набор операций. Для того, чтобы абстрактным типом данных можно было пользоваться, необходимо реализовать все операции, входящие в его интерфейс. С точки зрения клиента, использующего тип данных, важны лишь операции, которые можно выполнять над объектами этого типа, т.е. важен только интерфейс. Реализация должна быть скрыта от клиента (принцип сокрытия реализации).