In Item 2 of the “Effective Java, 2nd edition” book, there is this snippet of code, in which the author wants to forbid the empty initialization of an object. The type of exception thrown, is what confuses me here. I don’t understand if the AssertionError is thrown just because of an absence of more suited errors or because it should