There are some dependencies on some AWT classes that may impact on the startup performance. The list below explains some of the dependencies:
- the usages of the reflection API to access the private fields/methods
The usages may cause to load of some unexpected AWT classes. For example, the PopupMenu class (and some other classes) is a part of the method signatures of the Component class and the classes are loaded during the reflection API calls. For more information, please refer to the CR 6823296 (Class.getDeclaredMethod, getMethod, getDeclaredField, getField cause many classes to be loaded).
- the usages of the instanceof operator
The usages may cause to load of some unexpected AWT classes as well. For example, the GDIWindowSurfaceData class have some optional dependencies on the WFileDialogPeer, WPrintDialogPeer classes.