Мова програмування Java налічує 57 зарезервованих слів.[1] Програмісти не можуть використовувати зарезервовані слова як імена змінних, методів, класів або у якості будь-якого іншого ідентифікатора. З 57 ключових слів, 55 використовуються, 2 не використовуються тому, що є застарілими. Завдяки своєму спеціальному іменуванню[2] слів, більшість IDE (integrated development environments) для зручності використовують підсвічування синтаксису щоб відображати ключові слова іншим кольором.
abstract використовуються для реалізації абстракції в Java. Метод без визначення повинен бути оголошений як абстрактний, та клас котрий описує цей метод також повинен бути оголошений як абстрактний. Змінні абстрактних класів не можуть бути створені. У підкласах повинні бути реалізовані абстрактні методи. Ключове слово abstract не може бути використано зі змінними або конструкторами. Зауважте, що абстрактний клас взагалі не вимагає абстрактного методу.
Assert описує предикат (істинне/помилкове твердження), розміщений в програму Java, щоб вказати, що розробник вважає, що предикат завжди є вірним у цьому місці. Якщо твердження оцінюється як помилкове під час виконання, то це призводить до припинення виконання програми, інакше виконання продовжується.
byte — одиниця вимірювання обсягу даних. Найменша адресована одиниця пам'яті ЕОМ. Містить 8 бітів. Декларує змінну, котра містить значення від -127 до 128.
Визначає змінну char[6][7] Це ключове слово також використовується для оголошення, що метод повертає значення примітивного типу long.[8][9], розміру 2 byte[6][7] в Unicode кодуванні.
class — це ключове поняття в об'єктно-орієнтованому програмуванні, під яке і заточена Java. class визначає зміст і поведінку якоїсь сукупності даних і дій над цими даними. Створити клас можна за допомогою ключового слова class. Наприклад, якщо ми моделюємо прямокутну кімнату класом Room, то даними можуть бути довжина, ширина, висота, двері, електричні розетки, меблі. Зауважимо, що на рівні класу ми ще не знаємо, про яку кімнату йдеться. Діями можуть бути обчислення площі кімнати, підрахувати кількість меблів, відкриття дверей, тощо.
Використовується в циклах для того щоб перервати виконання коду та перейти на іншу ітерацію циклу. На низькому рівні використовується як goto оператор.
Ключове слово default можна додатково використовувати в операторі switch для позначення блоку котрий повинен виконуватися, якщо case не відповідає вказаному значенню. Крім того, default може також використовуватися для оголошення значень за замовчуванням в анотаціях мови Java. Від Java 8 default також використовується для вказівки, що метод в інтерфейсі має реалізацію за замовчуванням.
Ключове слово do використовується спільно з блоком while для створення циклу do-while, який виконує блок операторів, хоча б один раз, пов'язаних з циклом, а потім перевіряє булевий вираз, пов'язаний з while. Якщо вираз обчислюється як true, блок виконується знову, це продовжується до тих пір, поки вираження не буде вирахувано як false.
Ключове слово double[6][7] використовується для оголошення змінної, сигнатури метода чи поля котре містити 8 byte число з рухомою комою та подвійною точністю.
Ключове слово else використовується у поєднанні з if для створення оператора if-else, котрий перевіряє вираження на boolean. Якщо вираження обчислюється як true , то блок операторів, пов'язаних з if виконується. Якщо блок обчислюється як false , тоді виконується else.
Використовується в декларації класу для спадкування від суперкласу. Використовується в декларації інтерфейсу для вказівки одного або декількох суперінтерфейсів. Клас X розширює клас Y додаючи функціональність шляхом реалізації нових полів або методів, або шляхом перевизначення методів класу Y. Інтерфейс Z розширює один або більше інтерфейсів шляхом додавання методів.
Визначає об'єкт, який не може бути змінений в подальшому використанні. Може використовуватися в декларації метода як заборона на перевизначення в класах нащадках.
Ключове слово for використовується для створення циклу for котрий визначає ініціалізацію змінної, булевий вираз та лічильник. Спочатку виконується ініціалізація змінної, а потім оцінюється логічний вираз. Якщо вираз обчислюється як true, виконується блок операторів, пов'язаних з циклом, а потім виконується збільшення лічильника. Булевий вираз потім оцінюється знову; це продовжується до тих пір, поки вираження не буде false . Також for[10] використовується як ітеративна конструкція.
Ключове слово if[11][12] використовується для створення операторного блоку if, котрий перевіряє boolean вираз, якщо вираз обчислюється як true, виконується блок в іншому випадку не виконується . if може використовуватися разом з блоком if-else[12] або else.
implements
Використовуються в класах для того щоб реалізувати вказані інтерфейси.
import
Використовується для імпортування класу, декларується в самому початку програми. Починаючи з версії J2SE 5.0 import вираз зі static може імпортувати статичні члени класу.
instanceof
Бінарна операція котра перевіряє посилання об'єкту на конкретний тип. Повертає true якщо об'єкт є типом або похідною від цього типу, в іншому випадку false
Використовується для оголошення interface, який містить лише абстрактні методи без реалізації. interface може бути реалізований класами за допомогою ключового слова implements, цей клас повинен реалізувати усі методи. Інтерфейс може бути реалізований іншим інтерфейсом.
Ключове слово long[6][7] Це ключове слово також використовується для оголошення, що метод повертає значення примітивного типу long. Використовується для оголошення поля, сигнатури метода або змінної, котра може містити 64-розрядне ціле число, тобто 8 byte.
Ключове слово private[13] використовується в декларації метода, поля або внутрішнього класу. Доступ до private членів можуть здійснювати лише інші члени поточного класу.
Ключове слово protected використовується в декларації методу, поля або внутрішнього класу; Доступ до захищених членів може здійснювати лише із самого класу, нащадка або класи цього ж класу з одного модуля.
Ключове слово public використовується в декларації класу, методу або поля. Доступ до відкритих класів, методів і полів можуть здійснювати члени будь-якого класу.
Ключове слово short[6][7] Це ключове слово також використовується для оголошення, що метод повертає значення примітивного типу short.[8][9] використовується для оголошення змінної, поля яке може містити 16-розрядне ціле число тобто 2 byte.
Використовується для оголошення поля, методу або внутрішнього класу. Класи підтримують одну копію для усього типу, незалежно від того, скільки екземплярів існує для цього класу. static також використовується для визначення методу як методу типу. Методи класу прив'язані до типу класу, а не до конкретного екземпляра. (Класи та інтерфейси, оголошені як static в інших класах або інтерфейсах, насправді є класами верхнього рівня.)
Успадкування в основному використовується для досягнення динамічного зв'язування або поліморфізму часу виконання в Java , super використовується для доступу до членів класу, успадкованого класом. Дозволяє підкласам отримати доступ до перевизначених методів і прихованих членів його суперкласу. Ключове слово super також використовується для переадресації виклику від конструктора поточного класу до конструктора надкласу.
Ключове слово switch використовується у поєднанні з case та default для створення оператора switch, котрий оцінює змінну, знаходить співвідношення з конкретним case та виконує блок операторів, пов'язаних з цим кодом case. Якщо значення case не збігається зі значенням, виконується додатковий блок, позначений як default , якщо він включений.
Використовується в оголошенні методу або кодового блоку для блокування потоку котрих хоче отримати доступ до даних. Для статичних методів об'єкт, заблокований, є класом class. Гарантує, що максимум один потік один раз, що працює на одному і тому об'єкті, виконує цей код. Блокування автоматично звільняється після завершення виконання синхронізованого коду. Поля, класи та інтерфейси не можуть бути оголошені як synchronized.
Використовується для представлення посилання на екземпляр класу. this може використовуватися для доступу до членів класу і як посилання на поточний екземпляр. Ключове слово this також використовується для переадресації виклику від одного конструктора класу до іншого конструктора того ж класу.
Викликає виключення, якщо створений екземпляр виключення. Це призводить до того, що виконання продовжуватиметься з першим обробником виключень з оголошеним ключовим словом catch , для обробки типу виключення, сумісного з призначенням. Якщо в поточному методі не знайдено такого обробника виключень, то метод повертається і процес повторюється в методі виклику. Якщо у методі в стеку немає жодного обробника виключення, то програма припиніть свою роботу.
Використовується при декларуванні методів для визначення того, які виключення не обробляються в методі, а передаються на наступний вищий рівень програми. Усі невикористані виключення в методі, які не є екземплярами RuntimeException , повинні бути оголошені за допомогою ключового слова throws
Оголошує, що поле екземпляра не є частиною серіалізованої форми об'єкта. Коли об'єкт серіалізується, тільки значення без модифікатора transient будуть включатися в серіалізацію. Коли об'єкт десеріалізується, поля з transient[14] будуть зі значення за замовчуванням.
Затверджує блок інструкцій в котрому може бути виключення. Якщо виключення трапилося — перехоплює та передає управління блоку catch без подальшого виконання блоку. Разом з блоком try може використовуватися finally котрий виконує код в своєму блоці в будь-якому випадку. try повинен мати хоча б один блокcatch для коректного виконання.
The while використовується для затвердження циклу, котрий виконує своє тіло поки умова циклу дорівнює true. Також використовується для декларування конструкції do while.[15][16]
Спеціальні ідентифікатори
var
Спеціальний ідентифікатор, який не можна використовувати як ім'я типу.