آیا امکانش هست در جاوا همچنین کاری کرد:
//CLASS:
private static class MyClass {
final String adds = readFromFile("fileAddress");
public MyClass() {
//nothing here!
}
}
//USAGE:
String string = MyClass.adds;
؟
یعنی متغیر عمومی درون کلاس را بدون constructor و یا تابع تعریف کرد.
منظورم استفاده از یک تابع (در اینجا تابع readFromFile) در اول کلاس است. عملا این کار باید در constructor انجام پذیرد ولی برای سهولت این کار را در همان آغاز کلاس انجام دهیم. میشود؟
-------------------
ویرایش:
آزمایش کردم و شد. پس شدن میشود. ولی این که اصولی باشد یا نه؟ نمیدانم...
منظورم این است که... یعنی در جایی باعث ایجاد مشکل نشود یا باعث زیاد مصرف کردن منابع نشود (که احتمالا میشود ولی برای من اینجا زیاد مهم نیست)... چون اگر تابع readFromFile بخواهد هر بار که این متغیر از این کلاس را فرامیخوانیم برود هارد را بالا پایین کند احتمالا این روش زیاد استاندارد نخواهد بود...
اگر باعث زیاد مصرف کردن منابع شود... آیا میشود با افزودن دو واژه static final به آغاز این متغیر کار را درست کرد؟