These threads are used by the underlying libraries to manage the widgets, display, event-loop, and other plumbing that is needed for your graphical application.
A GUI application usually has a lot of moving parts, and if you've noticed you don't have to explicitly write any code to manage these parts (e.g., updating the screen, or drawing a button, or handling a mouse movement). Is is this set of background threads that are responsible for managing these parts, and making it as easy as possible for you to focus on your application logic.
These threads are spawned by the libraries that you use (e.g., AWT, Swing, etc.) and usually clean themselves (and the resources that they manage) up upon termination.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…