Ваш код, вероятно, подразумевается как сопутствующий объект.Это вроде фабрики на императивных языках.
По сути, у вас есть объект и класс пара.Объект ( singleton в императивных языках) не может быть создан несколько раз, как уже отмечали люди, и обычно используется для определения некоторой статической логики.На самом деле, есть только один экземпляр - когда вы звоните ему в первый раз.Но объект может иметь compaion - обычный класс, и, как я думаю, вы пропустили определение этого обычного класса, поэтому объект не может видеть никого другого, кроме самого себя.
решение состоит в том, чтобы определить этот класс или опустить new
(но я думаю, что это было бы логично неправильно).