27490


非常にくだらない質問でありますことを先にお詫び申し上げておきます．  
現在，Java+SwingでGUIを学んでおります．  
大概の教科書にはmainメソッドが以下のように記述されています．

[code]

    class Main{
        public static void main(String[] args){
            MainFrame frame = new MainFrame();
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setVisible(true);
        }
    }
    
[/code]

MainFrameクラスはJFrameクラスを継承したクラスであるとします．  
私は他クラスからセッタを呼ぶのがあまり好きではないので，上記のセッタをMainFrameのコンストラクタ内で記述したいと思うことがあります．  
するとMainクラスは当然以下のようになります．

[code]

    class Main{
        public static void main(String[] args){
            MainFrame frame = new MainFrame();
        }
    }
    
[/code]

こうしたところで動作そのものは変わりませんが，当たり前ながらIDEからは「未使用の変数frameがあります．」と表示されます．  
ただ，注意が表示されるのも気にくわないのです．  
このようにセッタを呼びたくないけど未使用の変数と認識させたくはないという我儘に解決策はあるのでしょうか？  
ただし，MainFrameクラスにmainメソッドを入れろというのはなしでお願いします．  
ひな形のように書けと言われればそうなので，そう思われる方は強くそう書いていただければと思います．


CC BY-SA 3.0
2016-07-09T16:53:25.607
27488
2016-07-09T17:15:37.387
17120
question
java swing
未使用の変数の処理について

[code]

    class Main{
        public static void main(String[] args){
            @SuppressWarnings("unused")
            MainFrame frame = new MainFrame();
        }
    }
    
[/code]

のように`@SuppressWarnings("unused")`をつければ大概のIDE（eclipse、ideaなど）では抑止できると思います。


CC BY-SA 3.0
2016-07-09T17:00:35.117
27489
2016-07-09T17:00:35.117
3974
27488
answer


本当に`MainFrame frame`が使用されていない(使用しない)変数であれば、変数に受ける必要はありません。  
下記のように書けます。

[code]

    public class Main {
        public static void main(String[] args){
            new MainFrame();
        }
    }
    
[/code]

(つまりIDEの指摘は正しいです)


CC BY-SA 3.0
2016-07-09T17:15:37.387
27490
2016-07-09T17:15:37.387
3068
27488
answer