main() で直接 Frame を生成する

Constructor を使わずに main() で直接 Frame(AWT) を生成します。

前田稔の超初心者のプログラム入門

プログラムの作成

  1. Constructor を使わずに main() で直接 Frame(AWT) を生成する方法です。
    //★ Constructor を使わずに Window を表示    前田 稔
    import java.awt.*;
    
    public class FrameDirect
    {
        // main()
        public static void main(String argv[])
        {   FrameDirect app = new FrameDirect();
            Frame frame = new Frame("View Frame");
            frame.setSize(400,300);
            frame.setBackground(new Color(200,60,60));
            frame.setVisible(true);
        }
    }
    

プログラムの説明

  1. new FrameDirect() で FrameDirect をインスタンス化します。
    続いて new Frame("View Frame") で Frame をインスタンス化します。
    frame.setVisible(true) で Frame を表示します。
        public static void main(String argv[])
        {   FrameDirect app = new FrameDirect();
            Frame frame = new Frame("View Frame");
            frame.setSize(400,300);
            frame.setVisible(true);
        }
        
  2. main() で直接生成すると、ソースコードが短くて簡単なようですが、色々な問題も発生します。
    その一つが main() は static で宣言しなければならず、多少の制限が加わることです。
    またこの方法は「スレッド安全性上お勧め出来ない」の記述を見かけたことがあります。

超初心者のプログラム入門(Java2)