Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции Java / 01. Основные понятия и принципы ООП. Язык программирования Java.pptx

.pdf
Скачиваний:
163
Добавлен:
16.03.2015
Размер:
210.31 Кб
Скачать

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

Лекция 1

Основные понятия и принципы объектно-ориентированного программирования

Язык программирования Java

© Составление, Гаврилов А.В., 2013

Самара

2013

План лекции

nВведение в объектно-ориентированное программирование

nОбщие сведения о Java

nПакеты и имена в Java

nОписание классов в Java

nРеализация инкапсуляции

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

2

Этапы программного решения задачи

nСоздание модели, определение данных для предстоящей обработки

nРазработка алгоритма: определение операций над данными и последовательности шагов по преобразованию текущего состояния модели в следующее

nФормулировка модели и алгоритма на языке программирования

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

3

Развитие подходов

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

4

Объектно-ориентированное программирование

nООП – это парадигма программирования, в которой базовым является понятие объекта

n Объект имеет

n Объект умеет

Состояние

Получать сообщения

Поведение

Обрабатывать данные

Уникальность

Отправлять сообщения

nПрограмма в ходе работы представляет собой набор взаимодействующих объектов

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

5

История ООП

n Около 1960

Появление близких к ООП идей в языках с другими парадигмами (Lisp, ALGOL)

n 1967

Simula – первый действительно объектно-ориентированный язык, типизация статическая

n 1969-1980

SmallTalk – динамическая типизация, рефлексия

n 1983

Objective-C, C++ – добавление идей ООП в язык C

n 1985

Eiffel – полностью объектно-ориентированный язык, взаимосвязанный с процессом разработки ПО

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

6

История ООП

n 1995

Delphi – язык Object Pascal, компонентная модель, визуальное программирование

Java – кроссплатформенный язык, очень похожий на C++

n 2000

C# - мультипарадигменный язык, составляющая платформы .Net

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

7

Откуда берутся объекты?..

n Прототипное программирование

Объект можно создать из ничего

Объект можно создать клонированием существующих объектов

Примеры языков: JavaScript, Perl

n Класс-ориентированное программирование

Объект создаётся как экземпляр класса

Примеры языков: С++, Java, C#

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

8

Класс

nКласс как сущность является объединением объектов с одинаковым набором свойств и общим поведением

nКласс как элемент программы описывает структуру состояния объектов и их поведение

Поля класса описывают элементы состояния объекта, по сути являются переменными

Методы класса описывают элементы поведения объекта, по сути являются функциями

nОбъект принадлежит классу, является экземпляром класса

nПрограмма в ходе написания представляет собой набор классов

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

9

Обычные и статические элементы класса

nОписанные в классе элементы (поля и методы) принадлежат объекту (находятся в контексте объекта)

У каждого объекта класса будет свой экземпляр поля

Вызванный у объекта метод будет работать с данными именно этого объекта

nСтатические элементы класса (поля и методы) принадлежат классу (находятся в контексте класса)

Каждого статического поля существует ровно один экземпляр

Статические методы находятся в классе, но не имеют объекта, с данными которого они работают

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

10