Без делать что-то подобное с использованием отражения или манипуляцию байткодом возиться с доступностью ...
«правильный» способ сделать это, чтобы получить экземпляр класса некоторых других путь. Например, если есть статический заводский метод или готовые экземпляры, к которым вы можете получить доступ. Причиной такого частного конструктора является управление построением класса. (Например, реализации перечислений имеют частный конструктор, так что вы не создаете дополнительные экземпляры за пределами статических.)
Если вы перешагните это, то кто-то (либо вы, либо оригинальный автор класса) является что-то не так.
Почему ваш конструктор закрывает всю систему? Мне любопытно. – FrankieTheKneeMan
@FrankieTheKneeMan Ha! Я даже не взглянул на тело конструктора. Да, это выглядит как преднамеренно странная головоломка или какое-то серьезное плохое кодирование. Побочные эффекты в конструкторах, как правило, не так велики, и вы не можете иметь гораздо больший побочный эффект, который закрывает JVM ... –
Мне любопытно узнать, какое преимущество мы можем получить как класс этого типа? – kosa