Когда статический вложенный класс (и статические члены в нем) загружаются в память?

Здесь я пытался реализовать одноэлементный класс для подключения к базе данных с использованием внутреннего статического вспомогательного класса:

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 класс загружается, или в то время, когдадеЫпзЬапсе () метод называется?

Ответы на вопрос(2)

Ваш ответ на вопрос