import java.awt.*;
import javax.swing.*;
public class ThreeButtons extends JFeame
{
  public ThreeButtons()
  {
    super("Program");
    setSize(350,225);
    JButton alpha=new JButton("Alpha");
    JButton beta =new JButton("Beta");
    JButton gamma =new JButton("Gamma");
    Container content=getContentPane();
    content.setLayout(new GridLayout(3,1));
    content.add(alpha);
    content.add(beta);
    content.add(gamma);
    setContentPane(content);
    setVisible(true);
  }
  punlic void main(String args[])
  {
    ThreeButtons b3=new ThreeButtons();
  }
}
就是super("Program")可以被setTitle()取代吗?还有ThreeButtons b3=new ThreeButtons()这个语句有什么用处,变量b3可是一直没有使用过呀?可以省掉这句吗?还有show()和pack()有什么作用?
    

解决方案 »

  1.   

    就是super("Program")可以被setTitle()取代吗?
    可以.    还有ThreeButtons b3=new ThreeButtons()这个语句有什么用处,变量b3可是一直没有使用过呀?可以省掉这句吗?
    一行测试代码. 没有的话你的窗体怎么弹出来啊.
    还有show()和pack()有什么作用? 
    show();显示窗体 也可以用setVisiable(true);
    pack(); 这个查一下api 把.
      

  2.   

    楼上正解。pack()是调整此窗口的大小,以适合其子组件的首选大小和布局。
      

  3.   

    ThreeButtons b3=new ThreeButtons(); 
    说白了就是为了执行 super("Program"); 
        setSize(350,225); 
        JButton alpha=new JButton("Alpha"); 
        JButton beta =new JButton("Beta"); 
        JButton gamma =new JButton("Gamma"); 
        Container content=getContentPane(); 
        content.setLayout(new GridLayout(3,1)); 
        content.add(alpha); 
        content.add(beta); 
        content.add(gamma); 
        setContentPane(content); 
        setVisible(true); 
      

  4.   

    super("Program")不可以被setTitle()取代。
    super("Program")除了设置title还有其他的JFeame初始化工作,setTitle()只是设置title,不能完成其他
    的初始化。ThreeButtons b3=new ThreeButtons()就是要生成一个jframe实例,并且用b3保持对这个生成的 
    jrame实例的引用。不可以省略。
      

  5.   

    b3不可以省略...它是用来实例化一个对象的....
    pack()是自适应大小的啊..