引用で言及されているトリックは、基本的に、プログラムを呼び出した直後にスプラッシュ スクリーンを表示し、クラスのロードを開始することによって、アプリケーションのロードが高速であるという錯覚をユーザーに与える方法です。
アプリケーションのメイン クラスがTheActualApplication. そのため、アプリケーションのスタートアップ クラスを作成すると、メイン クラスとして使用するFastSplash場合よりも早くスプラッシュ スクリーンが表示される場合があります。SlowSplash
public class FastSplasher {
public static void main(String[] args) {
SplashWindow.splash(Splasher.class.getResource("splash.gif"));
SplashWindow.invokeMain("TheActualApplication", args);
SplashWindow.disposeSplash();
}
}
public class SlowSplasher {
public static void main(String[] args) {
SplashWindow.splash(Splasher.class.getResource("splash.gif"));
TheActualApplication.main(args);
SplashWindow.disposeSplash();
}
}
使用時にスプラッシュ スクリーンがすぐに表示される理由FastSplashは、現在の Java VM では通常、遅延クラス解決がオンになっているため、大きな違いが見られない可能性があるためです。積極的なクラス解決の場合、スプラッシュ インSlowSplasherは、で使用されるすべてのクラスがロードされた後にのみ表示さTheActualApplicationれます。クラスは実行時にリフレクションを使用して動的にロードされ、静的に解決できず、起動時にロードされるFastSplasherため、スプラッシュ画面にすぐに表示されます。TheActualApplication