- •Лабораторна робота № 1.
- •Теоретичні відомості
- •Компіляція й виконання проекту
- •Практична частина
- •Практична частина
- •Завдання
- •Лабораторна робота № 3
- •Теоретичні відомості
- •Завдання
- •Лабораторна робота № 4
- •Теоретичні відомості
- •Завдання
- •Лабораторна робота № 5
- •Теоретичні відомості Робота з масивами
- •Завдання
- •Робота з рядками Клас String
- •Приклад консольного java-додатка
- •Завдання
ВСТУП
Програми на мові програмування Java підрозділяються за своїм призначенням на дві групи:
─ додатки Java, призначені для локальної роботи під управлінням інтерпретатора (віртуальної машини) Java.
─ апплети (aplets). Апплети являють собою невеликі спеціальні програми, що знаходяться на віддаленому комп'ютері в мережі, з яким користувачі з'єднуються за допомогою браузера. Апплети завантажуються в браузер користувача й інтерпретуються віртуальною машиною Java, убудованої практично в усі сучасні браузери.
Додатки являють собою звичайні локальні додатки. Оскільки вони виконуються інтерпретатором і не містять машинного коду то їхня продуктивність помітно нижча, ніж у звичайних програмах, що компілюються (С++, Delphi).
Апплети Java можна вбудовувати в документи HTML і поміщати на Web-Сервер. Використання в Інтернет-сторінках Java-апплетів надає їм динамічний і інтерактивний характер поведінки. Апплети беруть на себе складну локальну обробку даних, отриманих від Web-сервера або від локального користувача. Для більш швидкого виконання апплетів у браузері застосовується особливий спосіб компіляції - Just-In-Time compilation (JIT, «на-лету)», що дозволяє збільшити швидкість виконання апплетів в декілька разів.
Для розробки програм мовою Java потрібно спеціальне програмне забезпечення. Самі нові версії системного програмного забезпечення, необхідного для підтримки, можна завантажити із сайту компанії Sun (http://java.sun.com/): JRE, JDK. Перший додаток JRE - це програма для запуску й виконання програм (середовище виконання Java) Java Runtime Environment (JRE).
Для розробки програм потрібен комплект розробки програмного забезпечення − JDK (Java Development Kit). Він містить компілятор, стандартні бібліотеки інше.
На сьогодні є три Java-платформи:
Java 2 Platform, Standard Edition (J2SE);
Java 2 Platform, Enterprise Edition (J2EE);
Java 2 Platform, Micro Edition (J2ME).
Кожна із цих платформ призначена для розробки певного типу програм.
J2SE дозволяє розробляти звичайні (desktop) локальні додатки й апплети.
Друга платформа J2EE призначена для розробки серверних додатків (сервлетів, jsp-сторінок, компонентів JavaBeans).
Третя платформа (J2ME) застосовується при розробці додатків для мобільних і невеликих пристроїв (стільникових телефонів, кишенькових комп'ютерів і ін.), які мають істотно обмежені апаратні ресурси (ємність оперативної пам'яті, швидкодія процесора).
Таким чином, у мінімальний комплект для розробки програм на Java входять:
JRE - середовище виконання;
JDK для відповідної платформи (J2SE, J2EE, J2ME) - компілятор і бібліотеки;
середовище програмування.
Програми Java звичайно проходять п'ять стадій обробки, перш ніж будуть виконані: редагування, компіляція, завантаження, перевірка байт-коду й виконання.
На першому етапі в редактор вводиться програма, а потім виправлення якщо буде потреба. Файл із програмою необхідно зберегти, після остаточного редагування він має стандартне розширення «ім'я».java (наприклад, first.java).
На наступному другому етапі необхідно відкомпілювати програму. Компілятор Java повинен виконати трансляцію програми Java у байт-код, у цій формі вона вже буде доступна інтерпретаторові Java. Якщо програма успішно відкомпілюється, то буде створено файл із ім'ям «ім'я».class (наприклад, first.class). У даному файлі містяться байт-коди, які будуть інтерпретуватися під час виконання.
Третій етап називається завантаженням. Програму поміщають в оперативну пам'ять і їй передається керування. Завантажник класів зчитує файл «ім'я».class і поміщає його в оперативну пам'ять. Файл може завантажуватися як з локального диска комп'ютера, так з віддаленого комп'ютера по мережі. Завантажник завантажує в ОП наш файл і потім програма починає виконуватися інтерпретатором Java.
Перед тим як інтерпретатор Java приступить до виконання байт-коду, останній перевіряється верификатором байт-коду на четвертому етапі виконання програми. Цей етап назвемо перевіркою байта-коду. Успішне проходження даного етапу гарантує те, що завантажені класи не завдадуть шкоди захисту й не містять помилок.
На останньому п'ятому етапі JVM інтерпретує програму, послідовно виконуючи байти-коди. Програма може відразу не запрацювати в результаті помилок, викликаних на різних етапах виконання, тоді треба повернутися до первісного тексту програми й внести необхідні виправлення. Намагайтеся писати програми на Java у простому і ясному стилі. Варто уникати неправильних конструкцій і способів вживання мови, тоді ваші програми будуть швидко проходити всі етапи виконання.
Лабораторна робота № 1.
Тема: Знайомство з середовищем програмування NetBeans.
Мета: Вивчення платформи NetBeans і структури програми для створення додатків із застосуванням мови програмування Java.
Теоретичні відомості
Середовище NetBeans - це інтегроване середовище для розроблювачів, засіб для програмістів, що допомагає писати, компілювати й налагоджувати програми. Існує також велика кількість модулів, що розширюють її функціональність. IDE NetBeans - це безкоштовний продукт без обмежень на область його застосування.
Створення в NetBeans найпростішого додатка Java
Для створення найпростішого додатка Java виконайте наступні дії:
Запустіть інтегроване середовище розробки (IDE) NetBeans.
В середовищі IDE виберіть “Файл” > “Создать проект” (Ctrl+Shift+N), як показано на рисунку нижче.
У майстрові створення проекту розгорніть категорію “Java” і виберіть “Приложение Java”. Потім натисніть кнопку “Далее”.
На сторінці “Имя и расположение” майстра виконайте наступні дії (див. рис. нижче):
o введіть HelloWorldApp у поле “Имя проекта”;
o не встановлюйте прапорець “Использовать отдельную папку для хранения
библиотек”;
о у поле “Создать главный класс” уведіть helloworldapp.HelloWorldApp.
Натисніть кнопку “Готово” .
Проект буде створено і відкрито у середовищі IDE. На екрані повинні бути представлені наступні елементи:
ліве верхнє вікно “Проекты”, що містить дерево елементів проекту, у тому числі вихідні файли, бібліотеки, від яких залежить код, і т.д.; Це вікно може одночасно показувати довільне числа проектів. За замовчуванням усі дерева згорнуті, і потрібні вузли варто розвертати клацанням по вузлу з "плюсом" або подвійним клацанням по відповідній назві
праве вікно редактора вихідного коду показує відкритий файл HelloWorldApp;
ліве нижнє вікно “Навигатор” можна використовувати для швидкого переміщення між елементами усередині обраного класу; воно показує список імен членів класу додатка ─ імена змінних і підпрограм. Подвійне клацання по назві приводить до того, що у вікні редактора вихідного коду відбувається перехід на те місце, де задані відповідна змінна або підпрограма
Додавання коду до автоматично створеного вихідного файлу
Розглянемо, як виглядає генерований вихідний код додатка Java:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package helloworldapp;
/**
*
* @author Nikolay
*/
public class HelloWorldApp {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
}
}
Спочатку йде багаторядковий коментар /* ... */. Він містить інформацію щодо імені класу й час його створення.
Потім оголошується, що наш клас буде перебувати в пакеті HelloWorldApp. Після цього йде багаторядковий коментар /** ... */ , призначений для автоматичного створення документації щодо класу. У ньому присутня інструкція завдання метаданих за допомогою виразу @author - інформація щодо автора проекту для утиліти створення документації javadoc. Метадані - це якась інформація, що не відноситься до роботи програми й не включається в неї при компіляції, але супроводжує програму й може бути використана іншими програмами для перевірки прав на доступ до неї або її поширення, перевірки сумісності з іншими програмами, вказівки параметрів для запуску класу й т.п. У даному місці вихідного коду ім'я “User” береться середовищем розробки з операційної системи по назві папки користувача. Його варто замінити на ім'я реального автора.
Оскільки в майстрові створення проекту був встановлений (а точніше, не знятий) прапорець “Create Main Class”, середовищем IDE створюється новий головний клас, тобто оголошується клас Main. У ньому оголошені дві загальнодоступні (public) підпрограми. Першою з них є конструктор:
public Main() {
}
Його ім'я збігається з ім'ям класу. Він займається створенням об'єктів типу Main. Звичайно такий конструктор викликається з методу main, і за його допомогою створюється всього один об'єкт − додаток. Але, таких об'єктів для простих програм може й не створюватися, як це й відбувається в нашому випадку.
Всі класи й об'єкти додатка викликаються й управляються з методу main, який оголошено далі й виглядає в такий спосіб:
public static void main(String[] args) {
}
Він є методом класу, і тому для його роботи немає необхідності в створенні об'єкта, що є екземпляром класу Main. Хоча якщо цей об'єкт створюється, це відбувається під час роботи методу main.
Метод main є головним методом додатка й управляє роботою запущеної програми. Він автоматично викликається при запуску додатка. Параметром args цього методу є масив рядків, що має тип String[]. Це параметри командного рядка, які передаються в додаток при його запуску. Слово String означає “Рядок”, а квадратні дужки використовуються для позначення того, що це масив рядків.
Після закінчення виконання методу main додаток завершує свою роботу.
При оголошенні будь-якого методу в Java спочатку вказується модифікатор видимості, що вказує права доступу до методу, потім інші модифікатори, після чого треба тип значення, що повертається методом. Якщо модифікатор видимості не зазначений, уважається, що це private (читається “прайвіт”)- "закритий, приватний", що не дозволяє доступ до методу з інших класів.
Далі йде ім'я методу, після чого в круглих дужках йде список параметрів (аргументів), переданих у даний метод при його виклику. Після цього у фігурних дужках наводиться тіло методу, тобто його реалізація - пишеться той алгоритм, що буде виконувати метод.
У мові Java, як і в C/C++ підпрограми завжди є підпрограмами-функціями, що повертають яке-небудь значення. Якщо треба написати підпрограму-процедуру, у якій не треба повертати ніякого значення, в Java використають підпрограми-функції з типом значення void - "порожнеча, порожній простір". Це і відбувається у випадку методу main.
Середовище NetBeans створює заготівку методів − порожнє тіло. Для здійснення методом якої-небудь дії варто дописати свій власний код. Напишемо традиційний приклад − вивід повідомлення ("Hello World!".) Для цього замість коментарю в методі main
// TODO code application logic here
напишемо рядок виводу тексту
System.out.println("Hello World!");
Збережіть зміни шляхом вибору “Файл” > “Сохранить”, (Crtl+S).
Клас System, “система”, має поле out, “назовні”. Це об'єкт, призначений для підтримки виводу. У нього є метод println, призначений для виводу тексту в режимі консолі.
Консольний ввід-вивід раніше широко застосовувався в операційних системах, орієнтованих на роботу в режимі командного рядка. При цьому основним засобом взаємодії користувачів із програмами служила текстова консоль (“пульт керування”). У ній пристроєм уведення служила клавіатура, а пристроєм виводу - вікно операційної системи, що забезпечує вивід тексту в режимі друкарської машинки (системним шрифтом з буквами, що мають однакову ширину).
Метод System.out.print відрізняється від методу System.out.println тільки тим, що в println після виводу здійснюється автоматичний перехід на новий рядок, а в print триває вивід у той же рядок консолі. Тому вивід
System.out.println("Привіт!");
System.out.println("Привіт!");
Отримаємо текст
Привіт!
Привіт!
а
System.out.print("Привіт!");
System.out.print("Привіт!");
Отримаємо
Привіт!Привіт!
