Содержание
- 2. История ООП 1950-1960 – зарождение идеи «объектно-» «ориентированного» 1960е – появление объектно-ориентированного языка Simula. 1970е –
- 3. История ООП 1990е – рост популярности графических интерфейсов пользователя (GUI), которые основывались на техниках ООП В
- 4. История версий Java 1990 – Oak 1996 – JDK 1.0 1997 – JDK 1.1 1998 –
- 5. Особенности Java Кроссплатформенность (переносимость) Объектная ориентированность Привычный синтаксис, схожий с C и C++ Язык сильно типизированный;
- 6. Java Virtual Machine (JVM) Создаётся для каждой платформы, которая должна поддерживать запуск и функционирование Java-приложений Скрывает
- 7. Java Development Kit (JDK) Комплект инструментов для разработки приложений на Java Включает в себя: Компилятор (javac)
- 8. Объекты и классы В Java любой объект представляет собой экземпляр определённого класса Класс – шаблон поведения
- 9. Классы Код программы на Java представляет собой набор классов Классы могут иметь статические поля и методы
- 10. Конструкторы и деструкторы Конструкторы – особые методы, которые вызываются при создании объекта Необходимы для задания корректного
- 11. Отношения Ассоциация Композиция Агрегация Наследование
- 12. Основные принципы ООП Инкапсуляция – сокрытие реализации класса и отделение его внутреннего представления (реализации) от внешнего
- 13. Достоинства ООП Абстрагирование от деталей реализации Локализация кода и разделение функциональности Возможность создания расширяемых систем Единообразная
- 14. Недостатки ООП Усложнённое документирование Сложность проектирования Затруднённая навигация внутри и между классами в сложных иерархиях классов
- 15. Объекты и Java В Java все сущности являются объектами… либо классами или интерфейсами… и те, и
- 16. Виртуальная память Java Классы и интерфейсы являются ссылочными типами Во время выполнения программы ссылка может поменять
- 17. Пакеты Программа на Java состоит из набора пакетов Пакеты предназначены для логической группировки типов Пакет может
- 18. Имена Имена используются для доступа к конструкциям языка Имена классов и интерфейсов: Простые: Object Составные: java.lang.Object
- 19. HelloWorld.java public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } } Метод
- 20. Модуль компиляции Модуль компиляции хранится в .java-файле Является единичной порцией входных данных для компилятора Состоит из
- 21. Модуль компиляции Объявление пакета указывает, к какому пакету будут принадлежать объявляемые ниже типы Если отсутствует, то
- 22. Правила именования Пакеты: java.lang, com.google.android, java.sql, ru.ssau.tk Типы (классы и интерфейсы): Object, Class, Date, TextStyle, Runnable,
- 23. Рекомендации именования Называйте переменную так, чтобы было понятно, за что она отвечает Не используйте сокращений (за
- 24. Объявление класса class MyClass { } class MyClass extends Object { } Самое простое создание класса:
- 25. Наследование классов Транзитивность наследования: если класс A является наследником класса B, а класс B является наследником
- 26. Поля и методы class Item { String name; int cost = 0; void increaseCost(int value) {
- 27. Объявление полей Если переменная не инициализирована, то ей присваивается значение по умолчанию: Для числовых полей примитивных
- 28. Объявление методов В объявлении метода обязательно нужно указать тип возвращаемого значения (или void), имя метода и
- 29. Методы Пример метода и его реализации: int getArea(int width, int height) { return width * height;
- 30. Переменное число аргументов Есть возможность создания метода с переменным числом аргументов (только в конце метода!): void
- 31. Переменное число аргументов? На самом деле число не переменное, а последний аргумент представляет собой массив: void
- 32. Переменное число аргументов Сигнатуры методов будут идентичными и, таким образом, в классе не могут существовать два
- 33. Реализация метода Метод, возвращаемый тип которого не void, обязан вернуть значение этого типа с помощью ключевого
- 34. Ветвление в методе Эти методы будут работать одинаково Если метод ничего не возвращает, то return также
- 35. Ссылка объекта на себя Внутри нестатического контекста класса можно получить ссылку объекта на себя при помощи
- 36. Ссылка объекта на себя Detail returnNewestDetail(Detail otherDetail) { if (version > otherDetail.version) { return this; }
- 37. Родительские классы Доступ к родительским полям и методам класса можно получить при помощи ключевого слова super
- 38. Переопределение методов public class Square extends Rectangle { @Override public void setSize(double width, double height) {
- 39. Перегрузка методов public void setSize(double width) { setSize(width, width); } public void setSize(double width, double height)
- 40. Настоятельные рекомендации Называйте переменную так, чтобы было понятно, за что она отвечает Метод должен выполнять одну
- 42. Скачать презентацию

















![HelloWorld.java public class HelloWorld { public static void main(String[] args) { System.out.println("Hello,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1055399/slide-18.jpg)





















Указатели
Цветовая модель. Основные характеристики растра
Интерфейс проекта
Портал государственных и муниципальных услуг Республики Татарстан
The BSC Academy. Классификация видов тестирования
Программирование (Python). § 20. Символьные строки
Диаграмма деятельности
Ein kurzer Diskurs zu OM5 und ihre Vor- und Nachteile für Rechenzentrumbetreiber!
Цифровой квест Знатоки интернет пространства
LectOS3
Правовые методы обеспечения информационной безопасности
BlockChain
Обработка коллизий
Массивы. Функция showDay
Профессия моей мамы - программист
Единая мультисервисная платформа
Коллективные операции передачи данных
Операции над графами. Практическая работа 01
Manga Store. Our team developer
Позиционирование. Параметры блока
Разработка информационного портала для поддержки творческих идей молодёжи
Теоретические основы информатики. Лекция 1.2
Android разработка. Подготовительный курс. Базовый синтаксис: области видимости. Методы. Классы
Создание конференции в Skype
Линейные алгоритмы
Робот. Конструкция повторения
Динамическая память, динамические переменные в С++
Information theory. Project