Witam. Mam dość głupie pytanie dotyczące bloków inicjalizacyjnych w Javie. Mianowice po co w ogóle są bloki inicjalizacyjne?
Jaka jest różnica jeśli możemy zainicjalizować np tak zmienną:
class Klasa {
Klasa1 a;
Klasa1 b;
{
a = new Klasa1();
b = new Klasa1();
}
}
class Klasa1 {
int x;
}
a możemy też tak:
class Klasa {
Klasa1 a = new Klasa1();
Klasa1 b = new Klasa1();
}
class Klasa1 {
int x;
}
Tak samo z blokiem inicjalizacji zmiennych statycznych. W jakim celu został stworzony w ogóle ten blok inicjalizacji? Osobiście nie widzę, żadnych korzyści wynikających z jego stosowania. Może pytanie dość głupie, ale jeśli ktoś może to proszę o udzielnie odpowiedzi.