Intern
Фарқи байни майдон ва тағйирёбанда дар Java чист?
sobes.tech AI
Ҷавоб аз AI
Майдон — ин тағирёбанда, ки дар дохили синф, аммо берун аз ҳар кадом усул эълон шудааст. Майдонҳо хусусиятҳои объекти синфро муайян мекунанд.
Таъғирёбанда ҳар ҷой дар хотира аст, ки барои нигоҳдории маълумоти навъи муайян ҷудо шудааст. Тағирёбандаҳо метавонанд:
- Майдонҳо (field): дар сатҳи синф эълон шудаанд.
- Маҳаллӣ (local variable): дар дохили усул, конструктор ё блок эълон шудаанд.
- Параметрҳои усул (method parameter): дар имзои усул эълон шудаанд.
Асосӣ фарқият: доира ва вақти зиндагӣ. Майдонҳо ба объект (барои ғайристатикӣ) ё ба синф (барои статикӣ) тааллуқ доранд ва дар давоми тамоми давраи зиндагии онҳо вуҷуд доранд. Маҳаллӣ ва параметрҳои усул танҳо дар дохили блоке, ки онҳо дар он эълон шудаанд, вуҷуд доранд ва пас аз баромадан аз он нобуд мешаванд.
Масалан:
class Example {
int instanceField; // майдони намуна
static String staticField; // майдони статикӣ
void myMethod(int parameter) { // параметри усул
int localVar = 10; // маҳаллӣ
this.instanceField = parameter;
System.out.println(staticField + " " + localVar);
}
}