اصلاح کننده استاتیک در جاوا
در این مقاله به اصلاح کننده بدون دسترسی استاتیک در جاوا می پردازیم. اصلاحکنندههای بدون دسترسی، رفتار پیشفرض کلاس جاوا و اعضای آن را تغییر میدهند.
همانطور که در زیر توضیح داده شد، اصلاح کننده غیر دسترسی استاتیک در جاوا می تواند با متغیرها، متدها، کلاس ها و رابط ها استفاده شود.
متغیرهای استاتیک در جاوا
همانطور که می دانیم متغیرها با کلاس مرتبط هستند. به طور مشابه، متغیرهای استاتیک به کلاس تعلق دارند و برای همه نمونه ها (متغیر مرجع یک کلاس) مشترک هستند و توسط تمام اشیاء کلاس در جاوا به اشتراک گذاشته می شوند. اگر نمی خواهیم یک متغیر خاص شی باشد، می توانیم آن را ثابت کنیم.
اجازه دهید این را با یک مثال ببینیم،
class Employee {
int empid;
String empName;
String ceo;
void display() {
System.out.println(empid + " : " + empName + " : " + ceo);
}
}
public class StaticDemo {
public static void main(String[] args) {
Employee emp1 = new Employee();
emp1.empid = 1;
emp1.empName = "ABC";
emp1.ceo = "XYZ";
Employee emp2 = new Employee();
emp2.empid = 2;
emp2.empName = "DEF";
emp2.ceo = "XYZ";
emp1.display();
emp2.display();
}
}
هنگامی که این برنامه اجرا می شود، نتیجه می دهد
1: ABC: XYZ
2: DEF: XYZ
همانطور که در یک سازمان مدیر عامل برای همه کارکنان یکسان است، بنابراین ما دید متغیر مدیر عامل را به ثابت تغییر می دهیم زیرا مقادیر آن برای همه اشیا بدون توجه به شی یکسان است.
سناریوی فوق را می توان به صورت زیر اجرا کرد
class Employee {
int empid;
String empName;
static String ceo;
void display() {
System.out.println(empid + " : " + empName + " : " + ceo);
}
}
public class StaticDemo {
public static void main(String[] args) {
Employee emp1 = new Employee();
emp1.empid = 1;
emp1.empName = "ABC";
emp1.ceo = "XYZ";
Employee emp2 = new Employee();
emp2.empid = 2;
emp2.empName = "DEF";
emp2.ceo = "XYZ";
//this value will be replaced as ceo is a static variable
emp2.ceo = "PQR";
emp1.display();
emp2.display();
}
}
هنگامی که این برنامه اجرا می شود، منجر به
1: ABC: PQR
2: DEF: PQR
از آنجایی که مدیر عامل یک متغیر ثابت است، مقدار آن برای همه اشیا صرف نظر از شیء یکسان خواهد بود. بنابراین ما PQR را به عنوان ویژگی نام مدیر عامل دریافت می کنیم.
نکاتی که باید به خاطر بسپارید