Короткий ответ: вы не можете правильно инициализировать объект BitSet
, когда клиент вызывает new
().
Лучшее, что вы можете сделать, это сделать так, чтобы нулевое значение вашего BitSet
было действительным. Это то, что делают типы типа list.List
, sync.Mutex
и big.Int
. Таким образом, вы узнаете, что клиент не может получить недопустимое значение.
Следующая лучшая вещь, которую вы можете сделать, это создать функцию, похожую на конструктор (в данном случае названную NewBitSet
), и ожидать, что клиенты будут ее вызывать.