- •Основы объектно-ориентированного программирования
- •Оглавление
- •Тема 1. Введение в предмет и содержание дисциплины 4
- •Теоретический раздел
- •Тема 1. Введение в предмет и содержание дисциплины
- •Особенности Java
- •Установка Java в переменных окружениях
- •Некоторые из особенностей элементов Java
- •Символы, строки и идентификаторы
- •Комментарии
- •Ключевые слова
- •Литералы
- •Разделители
- •Операции
- •Основные приложения Java
- •Метод update()
- •Требование перерисовки
- •Тема 3. Введение в классы java. Методы и классы. Классы и наследование в java. Пакеты и интерфейсы Введение в классы Java
- •Синтаксис определения экземпляра класса
- •Модификаторы класса
- •Конструкторы
- •Ограничение доступа к элементам класса
- •Статические переменные и методы
- •Абстрактные методы
- •Методы final
- •Область видимости переменных
- •Переменные this и super
- •Тема 4. Основы ввода/вывода. Работа со строковыми данными Работа со строками
- •Потоки ввода-вывода информации
- •Байтовые и символьные потоки
- •Классы байтовых потоков
- •Классы символьных потоков
- •Предопределённые потоки
- •Тема 5. Работа с файлами Классы FileInputStream и FileOutputStream
- •Класс File
- •Класс RandomAccessFile
- •Тема 6. Методы и средства обработки исключений Методы и средства обработки исключений
- •Тема 7. Разработка апплетов, работа с графикой
- •Пакет awt
- •Класс Applet
- •Инициализация и завершение апплета
- •Запуск апплетов
- •Рисование линий в апплете
- •Рисование прямоугольников в апплете
- •Рисование эллипсов и кругов в апплете
- •Рисование дуг в апплете
- •Работа с цветом
- •Тема 8. Многопоточное программирование Интерфейсы в Java
- •Многопоточное программирование
- •Организация потоков
- •Создание нового потока
- •Тема 9. Разработка пользовательского интерфейса с использованием фреймов, элементов управления
- •События
- •Классы событий
- •Класс ActionEvent
- •Элементы-источники событий
- •Интерфейсы прослушивания событий
- •Классы пакета awt: Component, Window, Frame
- •Элементы управления Label, Button, Checkbox, Choice, List, Scrollbar
- •Элементы управления TextField и TextArea
- •Диалоговые окна
- •Контроль знаний Индивидуальная практическая работа № 1. «Объекты и классы»
- •Индивидульная практическая работа № 2. «Наследование и скрытие данных. Абстрактные классы и интерфейсы»
- •Контрольная работа № 1. «Работа с файлами»
- •Контрольная работа № 2. «Разработка пользовательского интерфейса с использованием фреймов, элементов управления»
- •Список использованных источников
Теоретический раздел
Лекция 1
Тема 1. Введение в предмет и содержание дисциплины
Существует 2 мнения относительно Java:
Java – производный от С++;
Java – самостоятельный язык программирования;
Обе версии имеют право на существование. Java – это простой объектно-ориентированный язык.
Java – объектно-ориентированная платформно-независимая многопоточная среда программирования.
Первая версия Java была задумана Дж. Гослингом, П. Ноутоном, К. Вартом, Э. Франком, М. Шериданом. Спецификация бала разработана компанией Sun Microsystems, выпущена в 1991 году. Сначала язык назывался “Oak” и был задуман как независимый от платформы язык с целью внедрения в электронные устройства различных производителей. Позднее появилась другая его особенность – пригодность для использования в WWW. Непосредственно Java его стали называть в 1995 году.
На Java можно создавать 4 основных вида приложений, которые можно разделить на две большие группы:
апплеты – это миниприложения, выполняемые в среде Java при помощи браузера (Netscape, Explorer, HotJava и др.)
<HTML>
< APPLET> < /APPLET>
</HTML>
Апплет, как правило, размещается на сервере и загружается на клиента браузером при прочтении тега < APPLET> .
приложения – приложения командной строки, GUI-приложения и пакеты.
а) Приложения командной строки – обычные приложения, запускаемые с командной строки MS DOS. Для его выполнения необходима специальная утилита-интерпретатор или так называемая виртуальная машина Java, которая поставляется вместе с пакетом JDK (Java Development Kit).
б) GUI-приложения (Graphical User Interface) – это обычные программы под Windows, которые не требуют для работы присутствия браузера, их выполнение обеспечивается JVM (виртуальная машина Java).
в) Пакеты – похожи на библиотеку классов в С++. Это не приложения в чистом виде, а наборы классов, которые содержатся в одном пакете. Как правило, все классы пакета помещаются в один каталог, напр. пакеты AWT (Abstract Windows Toolkit – оконный пользовательский интерфейс).
Особенности Java
Java – это интерпретируемый язык. Сначала программист компилирует исходный текст утилитой javac. В командной строке записывается: javac имя_файла. java. Создаётся файл: имя_файла.class.
Байт-код является двоичным и не зависит от архитектуры компьютера. Это не законченное приложение. Оно не выполняется в операционной среде выполнения программы, а выполняется в runtime environment (браузере или JVM). Сначала создаётся промежуточный байт-код, затем он интерпретируется под конкретную систему. Так как байт-коды Java интерпретируются, web-страницы, имеющие апплеты, зачастую загружаются дольше. Это объясняется тем, что байт-коды апплетов или автономных приложений размещаются в отдельных файлах и содержат больше данных, необходимых для компиляции, чем обычно требуется в неинтерпретируемых программах.
Java – это объектно-ориентированный язык. Он относится к группе языков, рассматривающих данные как объекты и методы. Это язык со строгой типизацией. В Java отсутствуют указатели и множественное наследование.
Виртуальная Java-машина
Рис
1.1. Виртуальная Java-машина
JVM располагается только в оперативной памяти. Позволяет выполнять Java-приложения на множестве платформ, а не только в той системе, в которой скомпилирован код.
Клиент-серверные возможности языка Java. Язык Java разработан для распределенной среды, предоставляет специальные классы и широкие возможности организации работы в сети. Он поддерживает протоколы TCP/IP и, фактически, снижает сложность доступа к сетевому ресурсу до уровня сложности доступа к файлу, а также обеспечивает ряд технологий для разработки сетевых приложений. Кроме того, Java позволяет создавать интерактивные сетевые программы за счет поддержки многопоточного программирования и эффективных решений распараллеливания и синхронизации процессов. TCP/IP – это протокол взаимодействия между клиентом и сервером с установлением логического соединения.
