Один из моих друзей спросил меня, что будет загружать первую статическую переменную или статический блок.
Мой ответ указывает на статическую переменную.
Итак, он дал мне два уравнения и сказал, чтобы различать их
Первое уравнение
public class Some {
public static void main(String args[])
{
System.out.println(Some.x);
}
static {
System.out.println(Some.x);
}
static int x=90;
}
O/P: 0 90
Второе уравнение
public class Some {
public static void main(String args[])
{
System.out.println(Some.x);
}
static int x=90;
static {
System.out.println(Some.x);
}
}
O/P: 90 90
Я попытался декомпилировать байтовый код и нашел его одинаковым для обоих приведенных выше уравнений. Пожалуйста, помогите мне разграничить их. Я запутался, когда статическая переменная будет инициализирована.