1. Рӯйхати калимаҳо
Дар забони Java, мисли ҳар забони барномасозӣ, калимаҳое ҳастанд, ки маънои махсус доранд. Масалан, return
ё if
ё while
. Ин гуна калимаҳо калимаҳои калидӣ (keywords) номида мешаванд ва аз ҷониби забони Java резерв шудаанд.
Шумо наметавонед ин калимаҳоро ҳамчун номи тағйирёбанда, номи метод ё класс истифода кунед. Компилятор ҳамеша онҳоро ба таври қатъӣ муайяншуда тафсир мекунад. Ҳамагӣ дар Java чунин калимаҳо 54
ҳастанд.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Баъзеяшонро шумо аллакай медонед, дигарҳоро ҳозир баррасӣ мекунем.
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
. Бо эъломи class ва enum шумо аллакай шинос шудаед. Калимаи калидӣ interface
барои эълом кардани як «навъи класс» — интерфейсҳо истифода мешавад.
Гурӯҳи дуюм — ин аллакай калимаҳои калидии package ва import, ки шумо бо онҳо шинос ҳастед. Package барои тавсифи пакети класс дар дохили файли класс истифода мешавад. Ва import
— то дар класи мо мо метавонем номҳои кӯтоҳи классҳои хориҷиро истифода барем.
Калимаҳои калидии extends
ва implements
барои тавсифи наследикони истифода мешаванд. Шумо онҳоро дар оғози квести Java Core дида мебаред.
Ва ниҳоят, гурӯҳи охирин — ин модификаторҳо static
, final
, default
ва abstract
. Дар бораи static
ва final
шумо аллакай як каме медонед, ва калимаи калидӣ abstract
барои абстракт кардани класс ё метод истифода мешавад. Муфассалтар — ҳангоми омӯзиши наследикони дар квести Java Core.
7. Кор бо объектҳо ва тағйирёбандаҳо
Боз 6 калимаи калидӣ барои кор бо объектҳо, методҳо ва тағйирёбандаҳо истифода мешаванд.
new
instanceof
this
super
return
var
(огоз аз Java 10)
Оператор new
барои эҷоди объектҳои нав истифода мешавад — инро шумо аллакай медонед.
Оператор instanceof
барои тафтиш кардани он, ки тағйирёбандаи муайян истинои объекти муайяни типро дар бар мегирад, истифода мешавад. Шумо бо он аллакай шинос ҳастед.
Калимаи калидӣ this
барои ҳалли мушкилоти сояҳои тағйирёбандаҳо ва методҳои класс истифода мешавад. Шумо инро низ омӯхтаед.
Калимаи калидӣ super
— аналоги this
аст, танҳо ҳангоми муроҷиат ба методҳо ва тағйирёбандаҳои класс-родитель. Класс родитель инчунин суперкласс номида мешавад.
Оператор return
барои бозгардондани арзиши функсия, ва якҷоя бо ин ҳамон функсияро ба итмом мерасонад.
Ва ниҳоят, var
— эъломи тағйирёбанда бо автовыводи типҳо мебошад. Шумо бо ин низ шинос ҳастед.
8. Медияпустӣ
Медияпустӣ дар сатҳи синтаксисии забони Java танҳо бо ду калима пешниҳод шудааст.
synchronized
volatile
Мо ҳатто онҳоро баррасӣ намекунем. Вақте ки шумо ба квести Java Multithreading мерасед — онгоҳ сар мекунем.
9. Муфтавоянд
Ҳамчунин 4 калимаи калидии махсус мансуб аст:
native
transient
assert
strictfp
native
— ин модификатор аст, ки пеш аз эъломи метод навишта мешавад. Он маъно дорад, ки коди метод дар Java навишта нашудааст, балки дар С++ ва дар дохили Java-машин аст (ё ба DLL-библиотекаи пайвастшаванда). Худи Java-машин, чуноне ки шумо эҳтимолан тахмин мекунед, низ дар C++ навишта шудааст. Ҳамчунин бисёр методҳои библиотекаҳои стандартӣ.
transient
— ин модификатор аст, ки пеш аз тағйирёбандаҳои класс (майдонҳои класс) навишта мешавад. Он Java-машинаро мепурсад, ки тағйирёбандаро дар вақти нигоҳдории объекти класс — сериализация гузарад (игнор кунад). Шумо дар квести Java Collections бештар дар бораи сериализация хоҳед донист.
assert
— низ аз C++ монд. Бо ёрии он ба код ҳуҷҷатҳои иловагӣ илова кардан мумкин аст (масалан, ки тағйирёбанда null нест). Штука дар он аст, ки он дар марҳилаи компиляция фаъол ё хомӯш карда мешавад.
Мумкин аст проектеро барои санҷиши дохилӣ ҷамъ кунед, ки дар он ин санҷишҳо иҷро мешаванд (фаъол). Ва мумкин аст онҳоро ҳангоми компиляция хомӯш кунед: вақте ки версияи программа, ки ба корбарон расонида мешавад, компилируете.
Хуб, дар бораи модификатори strictfp
ва дақиқияти иловагии процессорҳои Intel мо ҳатто як таърих низ нақл кардем.
10. Резервшуда, аммо истифода намешаванд
Ҳанӯз ду калимаи калидӣ ҳаст, ки резерв шудаанд, аммо истифода намешаванд.
const
goto
Ин низ мероси забони C++ аст, ки он ҷо ҳастанд ва истифода мешаванд.
11. Калимаҳои калидӣ нестанд
Константаҳои true
, false
ва null
формально ба калимаҳои калидӣ мансуб нестанд. Аммо, ҳама хусусиятҳои онҳоро доранд. Шумо наметавонед методро true
ё тағйирёбандаро false
ном диҳед. Компилятор ин кодро нахоҳад фаҳмид ва компилировать намекунад.
GO TO FULL VERSION