- Да, static означает, что оно будет одинаковым для каждого объекта, который его запрашивает, поэтому создание экземпляров не требуется
- !означает
NOT
.Чаще всего это выглядит как! =, Обозначая NOT EQUAL
.В этом случае проверяется, был ли создан объект db, поэтому это означает, что db имеет значение NOT NULL
.
3 & 4. Указанный вами метод говорит использоватькласс (без его создания) и вызов getFactory ().Который создаст коэффициент, если он равен NOT NULL
, в противном случае он вернет уже созданную фабрику.После этого он запрашивает соединение, используя instance
фабрики, которая была возвращена.Поскольку существует только одна фабрика, то мы можем предположить, что после создания экземпляра соединения (так же, как была создана фабрика), это соединение будет доступно для всех видов использования фабрики с продвижением
Я предлагаю прочитать статью Википедии о шаблонах синглтона.Надеюсь, это может быть полезно. Также , имейте в виду, вообще говоря, синглтон-паттерн считался скорее анти-паттерном, которого следует избегать.Мне кажется, что этот класс так же легко может быть создан как статический класс со статическим методом getConnection.С отображенным кодом кажется, что создание самого себя здесь бессмысленно.Но это как раз в этом небольшом контексте.