2

私のレッスンでは、JFrameのsetTitleメソッドを変更して、パラメーターとして整数を使用できるようにします。どうやってするか?そのメソッドをオーバーロードする必要がありますよね?setTitleメソッドで試したものはすべて、スタックオーバーフローで終了します。

import javax.swing.*;

public class MyFrame extends JFrame
{       
    MyFrame()
    {
        super();
        setSize(400, 400); // Standard initial size
        setVisible(true);
        setDefaultCloseOperation(MyFrame.EXIT_ON_CLOSE);
    }

    MyFrame(int size)
    {
        this();
        setSize(size, size); 
    }

    public void setTitle(int title)
    {           


    }

}


public class MainClass 
{
    public static void main(String[] args) 
    {   
        MyFrame frame = new MyFrame();
        frame.setTitle(1000);
    }
}
4

2 に答える 2

1

JFramesAPIsetTitleのメソッド

public void setTitle(String title)
Sets the title for this frame to the specified string.

その後、frame.setTitle("1000");作品になります

于 2013-03-27T11:17:44.940 に答える
1

メソッドのオーバーロードに関しては、正しい方向に進んでいるようです。試す:

public void setTitle(int title)
{           
    super.setTitle(""+title);
}

元のStringパラメーターを制限する要件はありませんでした。これは、サブクラスに別のオーバーロードされたメソッドを追加するだけです。

注:これはやや奇妙で不自然な例であるというロビンに同意します...通常、タイトルは文字列であるため、なぜそれを変更するのですか...

于 2013-03-27T12:03:12.383 に答える