Здесь я пытался реализовать одноэлементный класс для подключения к базе данных, используя внутренний статический вспомогательный класс:
package com.myapp.modellayer;
public class DatabaseConnection {
private DatabaseConnection() {
//JDBC code...
}
private static class ConnectionHelper {
// Instantiating the outer class
private static final DatabaseConnection INSTANCE = new DatabaseConnection();
}
public static DatabaseConnection getInstance() {
return ConnectionHelper.INSTANCE;
}
}
Однако я сомневаюсь, когда этот статический внутренний класс ConnectionHelper загружается в память JVM:
Во время загрузки класса DatabaseConnection или во время вызова метода getInstance()?
static class
не имеет то же значение, что и static в объявлении члена в Java. Это просто означает, что это вложенный не внутренний класс а>. - person user2864740   schedule 08.08.2014