
- •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. Робота із пріоритетами потоків
63.Клас Math.
Клас Math складається з набору статичних методів , які роблять найбільш популярні математичні обчислення і двох констант , що мають особливе значення у математиці - це число Пі і експонента . Часто цей клас ще називають класом - утилітою ( Utility class ) . Так як всі методи класу статичні немає необхідності створювати екземпляр цього класу - тому він і не має відкритого конструктора . Не можна так само і успадкувати цей клас , оскільки він оголошений з атрибутом final . Отже , константи визначені наступним чином:
public static final double Matht.PI - задає число Пі
public static final double Matht.E - число e.
Слід звернути увагу, що
1. abs поверне значення типу int, якщо як параметр будуть передані значення типу byte, short, char.
2. Кут задається в радіанах.
3. Якщо round має аргумент double, то повертається значення типу long, якщо аргумент типу float, то буде повернуто значення типу int.
64-65. Робота із датами в Java.
Клас Date спочатку надавав набір функцій для роботи з датою - для отримання поточного року , місяця і т.д. проте зараз всі ці методи не рекомендовані до використанню і практично всю функціональність для цього надає клас Calendar. Клас Date так само визначений у пакеті java.sql тому бажано вказувати повністю кваліфіковане ім'я класу Date.Існує кілька конструкторів класу Date однак рекомендовано до використання два Date ( ) і Date ( long date ) другий конструктор використовує як параметр значення типу long який вказує на кількість мілісекунд що минулео з 1 Січня 1970, 00:00:00 за Гринвічем. Перший конструктор створює дату використовує поточний час і дату ( тобто час виконання конструктора ) . Фактично це еквівалентно другому варіанту new Date ( System.current - TimeMillis ) ; Можна вже після створення екземпляра класу Date використовувати метод setTime ( long time ) , для того , щоб задати поточний час. Для порівняння дат служать методи after ( Date date ) , before ( Date date ) які повертають булеве значення в залежності від того виконана умова чи ні. Метод compareTo ( Date anotherDate ) повертає значення типу int яке дорівнює -1 якщо дата менша , 1 якщо більше і 0 якщо дати рівні. Метод toString ( ) являє строкове подання дати, проте для форматування дати у вигляді рядків рекомендується користуватися класом SimpleDateFormat визначеному в пакті java.text
66.Клас Calendar.
Більш розвинені засоби для роботи з датами представляє клас Calendar. Calendar є абстрактним класом. Для різних платформ реалізуються конкретні підкласи календаря. На даний момент існує реалізація Грегоріанського календаря - GregorianCalendar . Примірник цього класу створюється викликом статичного методу getInstance ( ) , який повертає екземпляр класу Gregorian . Підкласи класу Calendar повинні інтерпретувати об'єкт Date по різному. У майбутньому передбачається реалізувати так само місячний календар , який використовується в деяких країнах . Calendar забезпечує набір методів що дозволяють маніпулювати різними " частинами " дати, тобто отримувати і встановлювати дні, місяці , тижні і т.д.
Якщо при заданні параметрів календаря упущені деякі параметри , то для них будуть використані значення за замовчуванням для початку відліку. Тобто YEAR = 1970 , MONTH = JANUARY , DATE = 1 і т.д. Для зчитування , установки маніпуляції різних "частин" дати використовуються методи get ( int filed ) , set ( int filed , int value ) , add ( int field , int amount ) , roll ( int field , inr amount ) , змінна типу int з ім'ям filed вказує на номер поля з яким потрібно провести операцію. Для зручності всі ці поля визначені в Calendar , як статичні константи типу int .
Розглянемо докладніше порядок виконання перерахованих методів .
set ( int field , int value ) Як вже зазначалося раніше даний метод виробляє установку поля дати. Насправді після виклику цього методу , негайного перерахунку дати не проводиться. Перерахунок дати буде здійснений тільки після виклику методів get ( ) , getTime () або TimeInMillis ( ) .