Можно ли создать объект, если конструктор имеет модификатор private? Если да, то зачем собственно конструктору нужен модификатор доступа, помогите разобраться...
Это нужно, когда объект создается функцией-фабрикой (статической) того же класса. Часто, после создания объекта необходимо вызвать какой-либо его метод (например, для инициализации, которая не может быть выполнена в конструкторе), без вызова которого объектом нельзя пользоваться.
можно. чтобы создавать только из статических методов данного класса. сделать что-то типа фабрики.
Приватный конструктор запрещает создание экземпляра класса вне методов самого класса, например, что гарантировать существование только одного объекта определённого класса, предположим какого-то ресурса, например БД.
Подробнее про паттерн Singleton (Одиночка)
Модификатор доступа private
определяет доступ в рамках данного класса, где вы можете создавать объекты. Т.е. вы не сможете создать объект этого класса за его пределами, так например с помощью new
из другого класса или блока.
Конечно если вы не используете рефлексию, которая может изменить положение вещей.
Зачем это нужно, ну скажем вы хотите контролировать создание объектов внутри класса.
Создать можно через статический метод фабрику, это делается для того чтобы не создавать объекты напрямую, чтобы именовать конструкторы, но так же можно создать такой объект через рефлексию.
UPD
Ещё такие классы с приватными конструкторами используют для создания утилитарных классов, в которых есть только static методы.
Виртуальный выделенный сервер (VDS) становится отличным выбором
В LinearLayout циклом добавляется фрагмент, укомплектованный в другомxml файле
Как лучше писать микро-тесты/тесты на производительность в Java? Какие основные пункты, на которые стоит обратить внимание?