Омӯзиши забони барномасозӣ аз куҷо оғоз мешавад? Аз замони навиштани барномаи якум. Одатан, барномаи аввал "Салом ҷаҳон" номида мешавад ва тамоми функсияи он аз баровардани ибораи "Салом ҷаҳон!" ба консол иборат аст. Чунин барномаи оддӣ имкон медиҳад, ки барномасози нав эҳсос кунад, ки чизе кор мекунад.
"Салом ҷаҳон" бо забонҳои гуногуни барномасозӣ
Рамз дар забонҳои гуногуни барномасозӣ гуногун хоҳад буд: Паскал "Hello world"begin
writeln ('Hello, world.');
end.
C "Салом ҷаҳон"
int main() {
printf("Hello, World!");
return 0;
}
C# "Салом ҷаҳон"
static void Main(string[] args)
{
System.Console.WriteLine("Hello World!");
}
Java "Салом ҷаҳон"
public static void main(String[] args) {
System.out.println("Hello World!");
}
Сарфи назар аз рамзҳои гуногун, ҳама барномаҳо як фармони умумӣ доранд, ки мустақиман матнро ба консол мебароранд:
- Паскал -
writeln
; - C -
printf
; - C# -
System.Console.WriteLine
; - Java -
System.out.println
.
Дар бораи баромади консол дар Java бештар маълумот гиред
Тавре ки шумо аллакай фаҳмидед, барои баровардани матн ба консол, дар Java шумо бояд фармониSystem.out.println()
. Аммо ин маҷмӯи аломатҳо чӣ маъно дорад? Барои онҳое, ки бо забони Java ва истилоҳҳои асосии OOP ошно ҳастанд (барои донишҷӯёне, ки курси JavaRush-ро то сатҳи 15 гирифтаанд), ҷавоб равшан аст: “Барои баровардани матн ба консол, мо ба майдони статикии синф дастрасӣ пайдо мекунем, ки out
дар System
он мо методро меномем println()
ва ҳамчун далел мо an objectи синфро мегузарем String
". Агар маънои дар боло барои шумо норавшан бошад, пас мо онро мефаҳмем! Ин фармон аз се калима иборат аст: System out println
. Ҳар яки онҳо як намуди an objectро намояндагӣ мекунанд, ки функсияҳои заруриро барои кор бо консол таъмин мекунанд. System
- an objectе (дар Java онро синф меноманд), ки ҳамчун "пул" амал мекунад, ки барномаи шуморо бо муҳите, ки дар он кор мекунад, мепайвандад. out
- an objectе, ки дар дохor System
. Бо нобаёнӣ, ба ҷараёни баромади консол ишора мекунад. Шумо метавонед бештар дар бораи ҷараёнҳои I/O дар Java дар ин ҷо бихонед . println
— усуле, ки аз ҷониби субъекти берунӣ даъват карда мешавад, то тарзи баровардани иттилоот ба консолро нишон диҳад. Биёед ҳар як унсури ин занҷирро муфассалтар дида бароем.
Система
Тавре ки аллакай зикр гардид,System
ин як an objectи муайян (синф) мебошад, ки ба таҳиякунанда қобorяти иртибот бо муҳити худ: яъне системаи амалиётӣ, ки дар он барнома кор мекунад, таъмин мекунад. Азбаски консол замимаест, ки дар дохor системаи оператсионӣ насб шудааст (хати фармон, Shell барои Windows ва Terminal for Linux), маълум мешавад, ки an object барои чӣ истифода мешавад System
- барои барқарор кардани робита байни барномаи мо ва "ҷаҳони беруна". Илова ба пайвастшавӣ ба консол, он System
дорои функсияҳои дигар:
-
Дастрасӣ ба тағирёбандаҳои муҳити системаи амалиётӣ:
System.getenv("JAVA_HOME")
-
Қатъи барнома фавран:
System.exit(0)
Иҷрои барномаро бо қатъ кардани мошини виртуалии Java қатъ мекунад;
-
Ҷудокунандаи сатрро, ки дар ин системаи оператсионӣ истифода мешавад, гиред:
System.lineSeparator()
-
Гирифтани вақти ҷории система бо миллисонияҳо:
ва бисёр функсияҳои муфид.System.currentTimeMillis();
Арзиши тағирёбандаи муҳити JAVA_HOME-ро, ки дар танзимоти системаи ОС муқаррар шудааст, бармегардонад. Ҳангоми насб кардани Java, шумо эҳтимол ба он дучор шудаед;
System
дорои майдонҳое мебошад, ки истинодҳоро ба дигар an objectҳо нигоҳ медоранд:
out
— пайванди аллакай шинос ба моҳияти ҷараёни интиқоли иттилоот ба консол;in
— истинод ба an objectе, ки барои хондани маълумоти воридотӣ аз консол масъул аст.err
- хеле монандout
, аммо барои нишон додани хатогиҳо пешбинӣ шудааст.
System
, барномасоз метавонад онҳоро барои мақсадҳои худ истифода барад. Java оператори "."-ро барои ишора ба элементе, ки дар дохor як унсури дигар аст, истифода мебарад. Ҳамин тариқ, барои дастрасӣ ба an objectи ҷараёни баромади консол, шумо бояд codeро нависед:
System.out
Акнун биёед бифаҳмем, ки ин чӣ аст out
.
берун
out
номи тағирёбандаест, ки истинодро ба an objectи (an object) навъи PrintStream
. Ин an object тавре танзим карда шудааст, ки тамоми маълумоти ба он навишташуда дар консол ба охир мерасад. Ҳамин тавр, an object out
як мисоли синф аст PrintStream
ва шумо метавонед усулҳои мувофиқро дар он даъват кунед:
print()
— баромади иттилооти интиқолшуда. Он метавонад рақамҳо, сатрҳо ва дигар an objectҳоро ҳамчун далел қабул кунад;printf()
- баромади форматшуда. Матни интиқолшударо бо истифода аз сатрҳо ва аргументҳои махсус формат мекунад;println()
— баромади иттилооти интиқолшаванда ва канали хатӣ. Он метавонад рақамҳо, сатрҳо ва дигар an objectҳоро ҳамчун далел қабул кунад;- Баъзе усулҳои дигаре, ки ба мо дар заминаи ин мақола манфиатдор нестанд.
print()
ва println()
хурд аст. Ягона чизе, ки фарқ мекунад, println()
дар он аст, ки он ба ҷои мо як хати нав илова хоҳад кард, ки онро бештар маъмул print()
. Агар мо усулро се маротиба print()
бо далели "Салом Ҷаҳон!" даъват кунем, натиҷа чунин сатр мешавад:
Hello World!Hello World!Hello World!
Дар ҳоле ки усул println()
ҳар як баромадро дар хати нав истеҳсол мекунад:
Hello World!
Hello World!
Hello World!
Барои даъват кардани усул дар an object, оператори шиноси "." истифода мешавад. Ҳамин тариқ, даъват кардани усул println()
дар an objectи берунӣ чунин менамояд:
out.println()
println
Мисли бисёре аз дигар забонҳои барномасозӣ, println-и Java барои "хати чоп" кӯтоҳ аст. Мо аллакай медонем, киprintln()
ин усулест, ки бояд ба субъект даъват карда шавад out
. Агар шумо дар Java ва умуман барномасозӣ нав бошед, пас усулҳо маҷмӯи муайяни фармонҳо мебошанд, ки мантиқӣ якҷоя карда шудаанд. Дар ҳолати мо, println()
ин блоки фармонҳост, ки матнро ба ҷараёни баромад мефиристад ва дар охири сатр танаффус илова мекунад. Дар Java, усулҳо метавонанд далелҳо гиранд. Вақте ки мо методро даъват мекунем, аргументҳо дар дохor қавс гузаронида мешаванд.
println(“Hello World!”);
Дар навбати худ, codeе, ки дар дохor усул аст, матни мо гузаштаро қабул мекунад ва онро ба баромад мефиристад.
Биёед як занҷири мантиқӣ созем
Барои баровардани матн ба консол, барномасози Java бояд амалҳои зеринро иҷро кунад:- Бо субъекте тамос гиред, ки метавонад замимаи мо ва консолро пайваст кунад -
System
; - Дастрасӣ ба ҷараёни баромади консол -
System.out
; - Усулеро даъват кунед, ки маълумотро ба консол менависад -
System.out.println
; - Матнро барои сабт фиристед -
System.out.println(“Hello World!”);
GO TO FULL VERSION