import java.awt.*;
class AwtA {
    public static void main(String[] arg) {
        Frame win = new Frame();
        win.setVisible(true);
        win = new Frame("Window 2");
        win.setVisible(true);
    }
}

// java.lang.Object
//     java.awt.Component
//         Button
//         Canvas
//         Checkbox
//         Choice
//         Label
//         List
//         Scrollbar
//         TextComponent
//             TextArea
//             TextField
//         Container
//             Window
//                 Frame
//                 Dialog
//                     FileDialog
//             Panel
//             ScrollPane

// 無法直接 new Window()，其 public constructor 都需要參數

// Frame constructor 做
//      visible = false;                宣告在 Componet
//      setLayout(new BorderLayout());  宣告在 Container

// LayoutManager
//     1. BorderLayout
//     2. CardLayout
//     3. FlowLayout
//     4. GridLayout
//     5. GridBagLayout

//=== begin of alive threads list at main(AwtA.java:3) ===
//    <system> Reference Handler
//    <system> Finalizer
//    <system> Signal Dispatcher
//    <main> main

//=== begin of alive threads list at main(AwtA.java:4) ===
//    <system> Reference Handler
//    <system> Finalizer
//    <system> Signal Dispatcher
//    <main> main
//    <main> AWT-EventQueue-0
//    <main> SunToolkit.PostEventQueue-0
//    <main> AWT-Windows

// Thread AWT_EventQueue-0
//     呼叫實作 EventLinstener 的 Java methods
//     做額外的反應，也就是程式設計者想要的效果
// 同時服務兩個 Frame

