В Kotlin возможно ли иметь функцию factory, которая создает экземпляр класса с частным конструктором?
Моя цель - принудительно использовать функцию factory, которая будет использоваться, и предотвратить создание экземпляра через конструктор класса.
Пример:
// factory function, valid
val myInstance = myClassOf()
// class instantiation, invalid
val myInstance = MyClass()
Я пытаюсь имитировать поведение некоторых встроенных функций factory, таких как intArrayOf()
, например.
// works
val myIntArray = intArrayOf()
// not possible as IntArray has a private constructor
val myIntArray = IntArray()