Java ko‘rinish sohasi (scope)
Java ko‘rinish sohasi (scope)
Java tilida o‘zgaruvchilarga faqat ular yaratilgan soha ichida murojaat qilish mumkin. Bu ko‘rinish sohasi (scope) deb ataladi.
Metod ko‘rinish sohasi
Bevosita metod ichida e’lon qilingan o‘zgaruvchilar metodning ular e’lon qilingan qatordan keyingi istalgan joyida mavjud bo‘ladi:
Misol
public class Main {
public static void main(String[] args) {
// Code here CANNOT use x
int x = 100;
// Code here CAN use x
System.out.println(x);
}
}
Blok ko‘rinish sohasi
Kod bloki deganda figurali qavslar { } orasidagi barcha kod tushuniladi.
Kod bloki ichida e’lon qilingan o‘zgaruvchilarga faqat figurali qavslar orasidagi koddan va faqat o‘zgaruvchi e’lon qilingan qatordan keyin murojaat qilish mumkin:
Misol
public class Main {
public static void main(String[] args) {
// Code here CANNOT use x
{ // This is a block
// Code here CANNOT use x
int x = 100;
// Code here CAN use x
System.out.println(x);
} // The block ends here
// Code here CANNOT use x
}
}
Kod bloki mustaqil bo‘lishi yoki if, while yoki for operatorining bir qismi bo‘lishi mumkin. for siklida sikl sarlavhasida e’lon qilingan o‘zgaruvchi (masalan, int i = 0) faqat sikl ichida mavjud bo‘ladi.
Sikl ko‘rinish sohasi
for sikli ichida e’lon qilingan o‘zgaruvchilar faqat sikl ichida mavjud bo‘ladi:
Misol
public class Main {
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
System.out.println(i); // i is accessible here
}
// i is NOT accessible here
}
}
forsiklining o‘z bloki ({ ... }) bor.- Sikl sarlavhasida (
int i = 0) e’lon qilinganio‘zgaruvchisiga faqat shu sikl bloki ichida murojaat qilish mumkin. - Sikl tugashi bilan
iyo‘q qilinadi, shuning uchun undan sikldan tashqarida foydalana olmaysiz.
Bu nima uchun muhim
Sikl o‘zgaruvchilari sikldan tashqarida mavjud emas.
Bitta metod ichidagi turli sikllarda bir xil o‘zgaruvchi nomidan (i, j va h.k.) bemalol qayta foydalanishingiz mumkin:
Misol
public class Main {
public static void main(String[] args) {
for (int i = 0; i < 3; i++) {
System.out.println("Loop 1: " + i);
}
for (int i = 0; i < 2; i++) {
System.out.println("Loop 2: " + i);
}
}
}
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
