
- •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. Робота із пріоритетами потоків
35. Блоки і локальні змінні.
Блок це послідовність операторів , оголошень локальних класів або локальних змінних ув'язнених у дужки. Область видимості локальних змінних і класів обмежена блоком , в якому вони визначені. При зверненні до локальних змінних не може бути використаний кваліфікатор this
або ім'я класу . Оператори в блоці виконуються зліва направо , зверху вниз. Якщо всі оператори
( вираження ) у блоці виконуються нормально , то весь блок виконується нормально . Якщо
який - або оператор (вираз ) завершується ненормально , то весь блок завершується
ненормально . Не можна оголошувати кілька локальних змінних в межах видимості блоку.
У той же час не слід забувати , що локальні змінні перекривають видимість змінних - членів . Наприклад , цей приклад відпрацює нормально .
public class Test { static int x = 5 ; public Test () { } public static void main (String [] args ) { Test t =
new Test (); int x = 1 ; System.out.println ( " X =" + x ) ;} }
І на консоль буде виведено X = 1 . Перекриття локальними змінними області видимості глобальних змінних є , частою , але важко виявленої помилкою.
36. Порожній оператор.
; є порожнім оператором. Дана конструкція цілком застосовна там, де не передбачається виконання ніяких дій. Передчасне завершення порожнього оператора неможливо.
37. Мітки.
Будь-який оператор або блок може мати мітку . Мітку можна вказувати як параметр для операторів break та continue . Область видимості мітки обмежується оператором або блоком , до якого вона належить .
У разі якщо є декілька вкладених блоків та операторів , то мітки зовнішніх блоків будуть видимі у внутрішніх .
public class Test {
static int x = 5;
static {
}
public Test() {
}
public static void main(String[] args) {
Test t = new Test();
int L2 = 0;
Test: for(int i = 0; i< 10;i++) {
test: for(int j = 0; j< 10;j++) {
if( i*j > 50) break Test;}}}
private void test(){
;}}
У цьому прикладі можна побачити , що мітки використовують простір імен відмінне від простору імен змінних , методів і класів.
Традиційно використання міток не рекомендується , особливо в об'єктно-
орієнтованих мовах , оскільки серйозно ускладнює розуміння порядку виконання коду , а значить і його тестування і налагодження . Для Java цю заборону можна вважати не настільки строгим , оскільки найнебезпечніший метод goto відсутня. У деяких ситуаціях (як в розглянутому прикладі з вкладеними циклами ) мітки необхідні, але , звичайно , їх застосування слід обмежувати лише найнеобхіднішими випадками .
38. Синтаксис оператора if.
Оператор if дозволяє програмі залежно від умов виконати оператор або групу операторів , грунтуючись на значенні булевої змінної або виразу. Оператор if являетя основним оператором вибору в Java і дозволяє вибірково змінювати хід виконання програми - і це одна з основних відмінностей між програмуванням і простим обчисленням .Оператор if починається з ключового слова if . Ключове слово if має супроводжуватися булевим виразом , укладеним в дужки . Найпростіша форма виглядає так:
if (умова) оператор; / / якщо умова істинно, то виконується оператор
Тут умова - це булево вираз, має значення true або false . Якщо умова істинно , то оператор або група операторів виконується , якщо хибне, то оператор не виконується. Дуже часто булево вираз в операторі if містить яке-небудь порівняння , але можна використовувати булеву змінну або константу
if ( isRaining )
Оператор if триває укладеним у фігурні дужки фрагментом , який називають блоком операторів. Якщо використовується тільки один оператор , то фігурні дужки можна опустити.
Існує ще і другий варіант оператора if з використанням ключового слова else :
if (умова) оператор ; / / якщо умова істинно , то виконується перший оператор
else оператор ; / / якщо умова помилкова , то виконується оператор після else
У цьому випадку при виконанні умови оператора if ініціюється тільки один оператор , якщо умова не виконується , то також ініціюється тільки один оператор , який відноситься до else . Також можна використовувати блоки операторів , тоді синтаксис буде виглядати так:
if (умова)
{оператор1; оператор2 ;}
else
{оператор1 ;оператор2 ;}
Обидві частини оператора if і else не можуть виконуватися одночасно. А умовний вираз , керуюче оператором if має повертати булево значення .