Учебное пособие посвящено объектно ориентированному программированию на языке Java. Рассматриваются основные принципы объектно ориентированного программирования, средства работы со структурами данных – коллекции и дженерики, принципы объектно ориентированного дизайна.

Сокрытие информации и инкапсуляция.
Класс инкапсулирует имя, статические атрибуты и динамическое поведение как бы в «ящике». После того как класс определен, можно запечатать «ящик» и поставить его на «полку» для других пользователей или повторного использования. Любой пользователь может распечатать «ящик» и использовать его в своих приложениях. Это невозможно в процедурно ориентированных языках программирования.
Инкапсуляция - это один из основных принципов объектно ориентированного программирования. Это принцип, который требует сокрытия деталей реализации используемого программного компонента при возможности взаимодействовать с ним посредством предоставляемого интерфейса, а также объединение и защита жизненно важных для компонента данных. При этом пользователю предоставляется только спецификация (интерфейс) объекта. Пользователь может взаимодействовать с объектом только через этот интерфейс.
ОГЛАВЛЕНИЕ.
ВВЕДЕНИЕ.
1. ОСНОВЫ ОБЪЕКТНО ОРИЕНТИРОВАННОГО ПРОГРАММИРОВАНИЯ.
1.1. Введение в объектно ориентированное программирование.
1.2. Краткая история развития объектно ориентированного программирования.
1.3. Основные принципы объектно ориентированного программирования.
1.4. Класс и объект.
1.5. Определение класса в Java.
1.6. Создание экземпляров класса.
1.7. Оператор «Точка».
1.8. Переменные-члены и методы-члены класса.
1.9. Пример объектно ориентированного программирования.
1.10. Конструкторы.
1.11. Модификаторы управления доступом и области видимости.
1.12. Сокрытие информации и инкапсуляция.
1.13. Геттеры и сеттеры.
1.14. Ключевое слово “this”.
1.15. Метод toString().
1.16. Константы (fi nal).
1.17. Резюме по изменению класса Circle.
1.18. Примеры классов.
2. КОМПОЗИЦИЯ.
2.1. Пример классов «Автор» и «Книга».
2.2. Пример классов «Точка» и «Отрезок».
2.3. Пример классов «Точка» и «Круг».
3. НАСЛЕДОВАНИЕ.
3.1. Области видимости.
3.2. Переопределение методов и сокрытие полей.
3.3. Аннотация @Override.
3.4. Ключевое слово “super”.
3.5. Дополнение о конструкторах.
3.6. Конструктор без параметров по умолчанию.
3.7. Одиночное наследование.
3.8. Общий корневой класс java.lang.Object.
4. ПОЛИМОРФИЗМ, АБСТРАКТНЫЕ КЛАССЫ И ИНТЕРФЕЙСЫ.
4.1. Подстановка.
4.2. Апкастинг и даункастинг.
4.3. Оператор “instanceof”.
4.4. Резюме по полиморфизму.
4.5. Пример полиморфизма.
5. АБСТРАКТНЫЕ КЛАССЫ И ИНТЕРФЕЙСЫ.
5.1. Абстрактный метод.
5.2. Абстрактный класс.
5.3. Интерфейс.
5.4. Реализация множественных интерфейсов.
5.5. Интерфейс и абстрактный суперкласс.
5.6. Динамическое (позднее) связывание.
5.7. Инкапсуляция, связывание и связность.
6. ДЖЕНЕРИКИ И ВВЕДЕНИЕ ВО ФРЕЙМВОРК «КОЛЛЕКЦИИ».
6.1. Введение во фреймворк «Коллекции».
6.2. Коллекции и небезопасность типов.
6.3. Введение в дженерики.
6.4. Дженерик-классы.
6.5. Дженерик-методы.
6.6. Wildcards – подстановочные символы.
6.7. Дженерики, ограничивающие тип.
7. КОЛЛЕКЦИИ.
7.1. ArrayList с дженериками.
7.2. Обратная совместимость.
7.3. Автобоксинг и автоанбоксинг – автоупаковка и автораспаковка.
7.4. Иерархия интерфейсов во фреймворке «Коллекции».
7.5. Интерфейсы Iterable<E>, Iterator<E> и усовершенствованный цикл for.
7.6. Интерфейс Collection<E> и его подинтерфейсы List<E>, Set<E>, Queue<E>.
7.7. Интерфейс Map<K,V>.
7.8. Интерфейс List<E> и его реализации.
7.9. Упорядочение, сортировка и поиск.
7.10. Set<E> – интерфейсы и реализации.
7.11. Queue<E> – интерфейсы и реализации.
7.12. Интерфейсы и реализации Map<K,V>.
7.13. Алгоритмы фреймворка «Коллекции».
8. ПРИНЦИПЫ ОБЪЕКТНО ОРИЕНТИРОВАННОГО ДИЗАЙНА (ООД) КЛАССОВ.
8.1. SRP – Single responsibility Principle – принцип единственной ответственности.
8.2. OCP – Open Close Principle – принцип открытости/закрытости.
8.3. LSP – Liskov’s Substitution Principle – принцип замещения Барбары Лисков.
8.4. ISP – Interface Segregation principle – принцип разделения интерфейса.
8.5. DIP – Dependency Inversion principle – принцип инверсии зависимостей.
8.6. Другие принципы ООП и ООД.
ЗАКЛЮЧЕНИЕ.
БИБЛИОГРАФИЯ.
Купить .
По кнопкам выше и ниже «Купить бумажную книгу» и по ссылке «Купить» можно купить эту книгу с доставкой по всей России и похожие книги по самой лучшей цене в бумажном виде на сайтах официальных интернет магазинов Лабиринт, Озон, Буквоед, Читай-город, Литрес, My-shop, Book24, Books.ru.
По кнопке «Купить и скачать электронную книгу» можно купить эту книгу в электронном виде в официальном интернет магазине «Литрес», и потом ее скачать на сайте Литреса.
По кнопке «Найти похожие материалы на других сайтах» можно найти похожие материалы на других сайтах.
On the buttons above and below you can buy the book in official online stores Labirint, Ozon and others. Also you can search related and similar materials on other sites.
Хештеги: #учебник по программированию :: #программирование :: #Гуськова :: #инкапсуляция :: #автораспаковка









