Когда статический вложенный класс (и статические члены в нем) загружаются в память?
Здесь я пытался реализовать одноэлементный класс для подключения к базе данных с использованием внутреннего статического вспомогательного класса:
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 класс загружается, или в то время, когдадеЫпзЬапсе () метод называется?