Поскольку статика инициализируется в порядке, указанном в исходном коде.
Проверьте это:
class MyClass {
private static MyClass myClass = new MyClass();
private static MyClass myClass2 = new MyClass();
public MyClass() {
System.out.println(myClass);
System.out.println(myClass2);
}
}
Это напечатает:
null
null
myClassObject
null
РЕДАКТИРОВАТЬ
Хорошо, давайте нарисуем это, чтобы быть немного яснее.
Это ясно?
РЕДАКТИРОВАТЬ 2
Как указал Варман, ссылка на себя будет нулевой, пока она инициализируется. Что имеет смысл, если вы думаете об этом.
Если ветка определенно мертва, я предпочитаю ее удалить. При необходимости вы всегда можете восстановить что-либо в TFS (Параметры, Контроль версий, Показать удаленные элементы). Dev работает в этой области, не осознавая, что это может вести себя странно (например, файлы исчезают, когда они выполняют Get Latest), однако им приходится довольно быстро выяснять, что что-то произошло.
Тем не менее, иногда может потребоваться время, чтобы убедитесь, что ветка определенно умерла, и в этом случае изменение разрешений в ветке, чтобы только ограниченное количество людей могло редактировать файлы в этой ветке, является удобной техникой. Вы можете попросить одного человека заблокировать все файлы в ветке с помощью блокировки извлечения, но я '
Мы удаляем ветки, как только убедимся, что слияние прошло успешно.
Мы перемещаем их в папку архива. Мы, вероятно, также должны изменить разрешения.