Какое исключение следует делать, если я сталкиваюсь с незаконным состоянием - например, метод инициализации, который следует вызывать только один раз, когда вызывается второй раз? Я действительно не вижу никакого встроенного исключения, которое имеет смысл. Это похоже на что-то, что должно быть в рамках - я не буду тыкать в нужное место?