1. Списък с думи
Както във всеки език за програмиране, Java има думи със специално meaning. Например return
or if
or while
. Тези думи се наричат ключови думи ( ключови думи ) и се считат за запазени от езика Java.
Не можете да използвате тези думи като име на променлива, име на метод or име на клас. Компилаторът винаги ще ги интерпретира по строго определен начин. Има 54
такива думи в Java.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Вече знаете някои от тях, а за останалите ще говорим точно сега.
2. Примитивни типове
Както вероятно си спомняте, Java има 8 примитивни типа и всеки от тях има своя собствена ключова дума:
byte
short
int
long
char
float
double
boolean
void
Ако имате достатъчно любознателен ум, има голям шанс вече да сте опитали да наименувате променлива int. И разбира се не успяхте. Това е точно защото имената на всички примитивни типове са запазени думи.
Типът void
също попада в тази категория.
3. Примки и разклонения
Циклите и разклоненията също ни дават доста дълъг списък от ключови думи:
if
else
switch
case
default
while
do
for
break
continue
Само 10 думи са достатъчни, за да може езикът да предостави няколко вида цикли, разклонения и команди за управление за прекъсване на цикли ( break
и continue
) и множество разклонения ( switch
). Вече сте запознати с всички тези ключови думи.
4. Изключения
Изключенията ни дават 5 ключови думи:
try
catch
finally
throw
throws
Всички те са част от try-catch-finally
блок. Операторът за хвърляне на изключения е throw
, а throws
ключовата дума поддържа checked
механизма за изключения.
Добрата новина е, че вече сте запознати с всички ключови думи, свързани с изключения, така че вече сте запознати и с работата с изключения.
5. Видимост
Тук има само три ключови думи и вече сте запознати с тях.
private
protected
public
public
позволява достъп до метод/променлива/клас от всяка точка на програмата.
private
забранява достъп до метод/променлива/клас от всяко място в програмата. Достъпът е разрешен само в рамките на същия клас като метод, маркиран с private
модификатора.
protected
работи по същия начин като private
, но също така позволява достъп до метод/променлива/клас от наследени класове. Ползите от този модификатор ще ви станат по-ясни, когато се запознаете с ООП и наследяването.
6. Работа с класове
Има 11 ключови думи в тази категория:
class
interface
enum
import
package
extends
implements
static
final
abstract
default
Те могат да бъдат разделени на 4 групи.
Първата група се отнася до създаването на класове: class
, interface
и enum
. Вече научихте за декларирането на класове и enums . Ключовата interface
дума се използва за деклариране на още един класоподобен тип: интерфейси.
Втората група се състои от ключовите думи за пакет и импорт , с които вече сте запознати. Ключовата дума package се използва за указване на пакета на клас във файл на клас. И import
така можем да използваме кратки имена на външни класове, когато пишем наши собствени класове.
Ключовите думи extends
и implements
се използват за наследяване. Ще ги разгледате в самото начало на търсенето на Java Core.
И накрая, последната група се състои от модификаторите static
, final
, default
и abstract
. Вече знаете малко за static
и final
. Ключовата abstract
дума се използва, за да направи клас or метод абстрактен. Ще получите повече подробности, когато изучавате наследството в мисията на Java Core.
7. Работа с обекти и променливи
Още шест ключови думи се използват при работа с обекти, методи и променливи.
new
instanceof
this
super
return
var
(от Java 10)
Операторът new
се използва за създаване на нови обекти - вече знаете това.
Операторът instanceof
се използва за проверка дали дадена променлива съдържа препратка към обект от определен тип. Вече сте запознати с него.
Ключовата this
дума се използва за решаване на проблеми, които възникват поради засенчване на променливи и методи на екземпляр. Вие също сте изучавали това.
Ключовата super
дума е аналогична на this
, но се използва за обозначаване на методите и променливите на родителския клас. Родителският клас се нарича още суперклас.
Инструкцията return
се използва за връщане на стойността на метод, Howто и за прекратяване на изпълнението на метод.
И накрая, var
е за деклариране на променлива, чийто тип се извежда автоматично. Вече сте запознати с това.
8. Многопоточност
На нивото на синтаксиса на Java многонишковостта се представя само с две думи.
synchronized
volatile
Дори няма да ги докоснем. Преминете към търсенето на Java Multithreading и след това ще се потопим.
9. Разни
Има още 4 специални ключови думи:
native
transient
assert
strictfp
native
е модификатор, който може да бъде написан преди декларация на метод. Това означава, че codeът на метода е написан не на Java, а на C++ и е вграден в Java машината (добре or DLL). Както вероятно вече се досещате, самата Java машина също е написана на C++. Точно като много от стандартните библиотечни методи.
transient
е модификатор, който може да бъде написан преди променливи на екземпляр (полета на клас). Той изисква от Java машината да пропусне (or игнорира) маркираната променлива, докато сериализира обект от класа. Можете да научите повече за сериализацията в търсенето на Java Collections.
assert
също идва в Java от C++. С негова помощ можете да добавите допълнителни проверки към вашия code (например да проверите дали дадена променлива е нула). Важното тук е тези проверки да са активирани or деактивирани по време на компorране.
Можете да изградите проекта за вътрешно тестване и тези проверки ще бъдат извършени (включени в компилацията). Или можете да ги деактивирате по време на компилация, за да създадете versionта на програмата, която ще бъде предоставена на потребителите.
Що се отнася до strictfp
ключовата дума и допълнителната прецизност на процесорите на Intel, имаме цяла история за вас .
10. Запазени, но неизползвани
Има и две ключови думи, които са запазени, но не се използват.
const
goto
Те също са наследство от езика C++, където съществуват и се използват.
11. Не ключови думи
Формално константите true
, false
и null
не са ключови думи. Въпреки това, всеки от тях има своите особености. Не можете да дадете име на метод true
or променлива false
. Компилаторът няма да разбере такъв code и няма да го компorра.