
- •1. Історія створення Java.
- •2. Історія розвитку Java
- •3.Опишіть поняття “об’єкт”
- •4. Опишіть поняття “клас”
- •5. Опишіть типи відношень між класами
- •6. Переваги і недоліки об’єкто-зорієнтованого програмування
- •7. Опишіть правила побудови ідентифікаторів мови Java, наведіть приклади
- •8. Поняття літералів. Приклади
- •9. Оператори та операції в мові Java
- •11. Типи даних у мові Java
- •12. Клас Object
- •13. Клас String
- •14. Клас Class
- •15. Імена в Java
- •16. Пакети в Java
- •17. Область видимості імен
- •18.Об’ява класів у Java
- •19.Приведення типів у Java
- •21.Приведення посилальних типів даних.
- •22.Приведення до рядка.
- •23.Заборонені приведення.
- •24.Застосування приведення типів.
- •25.Статичні елементи.
- •26. Ключові слова this і super.
- •27. Ключове слово abstract.
- •28. Поняття інтерфейсів.
- •29. Поліморфізм.
- •30. Масиви в Java.
- •31. Приведення типів для масивів.
- •32. Клонування масивів.
- •33. Керування ходом виконання програми.
- •34. Нормальне і перерване виконання операторів.
- •35. Блоки і локальні змінні.
- •36. Порожній оператор.
- •38. Синтаксис оператора if.
- •39. Синтаксис оператора switch.
- •40. Керування циклами.
- •41.Синтаксис оператора while
- •42.Ситаксис оператора do
- •43.Синтаксис оператора for
- •44.Оператори break I continue
- •45.Іменовані блоки
- •46. Оператор return
- •47. Оператор synchronized
- •48. Помилки при роботі програми. Виняткові ситуації
- •48. Помилки при роботі програми. Виняткові ситуації
- •49.Причини виникнення помилок
- •50.Обробки виняткових ситуацій
- •51.Конструкція try-catch-finally
- •52.Використання оператора throw
- •53.Виняткові ситуації, які перевіряються і які не перевіряються
- •54.Створення класів користувача обробки виняткових ситуацій
- •55.Поняття потокв в Java
- •56.Базові класи для роботи з потоками
- •57.Класс Thread
- •58. Інтерфейс Runnable
- •60. Потоки-демони
- •61.Синхронізація роботи потоків.
- •62.Класи обгортки для примітивних типів.
- •63.Клас Math.
- •66.Клас Calendar.
- •67.Клас TimeZone.
- •68. Колекції java
- •69.Інтерфейс Collection.
- •70.Інтерфейс Set.
- •71.Інтерфейс List.
- •72.Інтерфейс Map.
- •73.Інтерфейс SortedSet.
- •74.Інтерфейс SortedMap.
- •75.Інтерфейс Iterator.
- •76.Конкретні класи колекцій.
- •77.Клас Properties.
- •78. Інтерфейс Comparator.
- •79.Клас BitSet.
- •80.Клас Random.
- •81.Система введення/виведення. Потоки даних.
- •82.Класи реалізації потоків даних.
- •84. Робота із файловою системою.
- •59. Робота із пріоритетами потоків
15. Імена в Java
Імена (names) використовуються в програмі для доступу до оголошених (declared) раніше "об'єктів", "елементів", "конструкцій" мови (всі ці слова-синоніми були використані тут в їх загальному сенсі, а не як терміни ООП, наприклад). Конкретніше, в Java є імена:
пакети; класи; інтерфейси;
елементи (member) вказівних типів:
поля;
методи;
внутрішні класи та інтерфейси;
аргументи:
методи;
конструктори;
обробники помилок;
локальні змінні.
Відповідно, всі вони повинні бути оголошені спеціальним чином, що буде поступово розглядатися по ходу курсу. Так само оголошуються конструктори.
Нагадаємо, що пакети (packages) в Java - це спосіб логічно групувати класи, що необхідно, оскільки часто кількість класів у системі становить кілька тисяч, або навіть десятків тисяч. Крім класів та інтерфейсів в пакетах можуть перебувати вкладені пакети. Синонімами цього слова в інших мовах є бібліотека або модуль.
Імена Прості і складені імена. Елементи
Імена бувають простими (simple), що складаються з одного ідентифікатора (вони визначаються під час оголошення) і складними (qualified), що складаються з послідовності ідентифікаторів, розділених крапкою. Для пояснення цих термінів необхідно розглянути ще одне поняття.
У пакетів і вказівних типів (класів, інтерфейсів, масивів) є елементи (members). Доступ до елементів здійснюється за допомогою виразу, що складається з імен, наприклад, пакету і класу, розділених крапкою Далі класи та інтерфейси будуть називатися об'єднуючим терміном тип (type).
Елементами пакету є класи та інтерфейси, що містяться в ньому, а також вкладені пакети. Щоб отримати складене ім'я пакету, необхідно до повного імені пакету, в якому він розташовується, додати точку, а потім його власне просте ім'я. Наприклад, складене ім'я основного пакету мови Java - java.lang (тобто просте ім'я цього пакету lang, і він знаходиться в загальному пакеті java). Усередині нього є вкладений пакет, призначений для типів технології reflection, який згадувався в попередніх розділах. Проста назва пакету reflect, а значить, складена - java.lang.reflect.
Просте ім'я класів та інтерфейсів дається при оголошенні, наприклад, Object, String, Point. Щоб отримати складене ім'я таких типів, треба до складеного імені пакету, в якому знаходиться тип, через крапку додати просте ім'я типу. Наприклад, java.lang.Object, java.lang.reflect.Method або com.myfirm.MainClass. Зміст останнього вираження такий: спочатку йде звернення до пакету com, потім до його елементу - вкладеного пакету myfirm, а потім до елементу пакета myfirm - класу MainClass. Тут com.myfirm - складене ім'я пакету, де лежить клас MainClass, а MainClass - просте ім'я. Складаємо їх і поділяємо точкою - виходить повне ім'я класу com.myfirm.MainClass.
Для вказівних типів елементами є поля і методи, а також внутрішні типи (класи та інтерфейси). Елементи можуть бути як безпосередньо оголошені в класі, так і отримані у спадок від батьківських класів і інтерфейсів, якщо такі є. Просте ім'я елементів також дається при ініціалізації. Наприклад, toString (), PI, InnerClass. Складене ім'я виходить шляхом об'єднання простого чи складеного імені типу, або змінною об'єктного типу з ім'ям елемента. Наприклад, ref.toString (), java.lang.Math.PI, OuterClass.InnerClass. Інші звернення до елементів вказівних типів вже неодноразово застосовувалися в попередніх розділах.