猿问

关于运转建立窗口的问题

class StartUpAction implements ActionListener
{
   //  Button is clicked
    public void actionPerformed (ActionEvent e   )
    {
        System.out.println("User Clicked the Button");
    }
}
public class StartUpScreen
{
  JFrame jf;
  //object of class JButton
  JButton start;
  StartUpScreen()
  {         
      jf = new JFrame ("Java 1 batch");
      start = new JButton("Click Me");
      jf.setLayout(new FlowLayout());
//FlowLayout是流式布局.设置这个布局之后组件在窗体中从左到右依次排列 如果排到行的末尾 换行排列 排列会随着窗体的大小而改变
      jf.add(start);//add start to the frame
      jf.setSize(300,300);
      jf.setVisible(true);//make the frame visible
      start.addActionListener(new StartUpAction());
  }
    public static void main(String[] args) {
        StartUpScreen obj = new StartUpScreen();
      
    }
  
  
}
public class StartUpScreen2_0
{
  JFrame jf;
  //object of class JButton
  JButton start;
  StartUpScreen2_0()
  {         
      jf = new JFrame ("Java 1 batch");
      start = new JButton("Click Me");
      jf.setLayout(new FlowLayout());
//FlowLayout是流式布局.设置这个布局之后组件在窗体中从左到右依次排列 如果排到行的末尾 换行排列 排列会随着窗体的大小而改变
      jf.add(start);
      jf.setSize(300,300);
      jf.setVisible(true);
     //Anonymous Inner Class 
      start.addActionListener(new ActionListener()
      {
           public void actionPerformed (ActionEvent e)
    {
        System.out.println("User Clicked the Button");
    }
      });
  }
    public static void main(String[] args) {
        StartUpScreen2_0 obj = new StartUpScreen2_0();
      
    }
  
  
}


57cd8d6f0001ba2605000365.jpg

图中所示的即为上述的两段代码。

这是我们老师在上课时给我们讲的一个关于startupscreen的例子。

两段代码好像是第一个用了两个object第二个用了一个object...这两段语句有哪些不同???    

但是关于图中用红框圈出的语句我有些不太明白,求大神解释。

1.class StartUpAction implements ActionListener

是什么意思?什么时候该用到这个语句?

2.public void actionPerformed (ActionEvent e   )

这个是什么意思?ActionEvent e 这个e我发现去掉程序也能照常运行- -

3.start.addActionListener(new StartUpAction());

这个语句是什么意思?

第二个程序语句中

start.addActionListener(new ActionListener()
      {
           public void actionPerformed (ActionEvent e)
    {
        System.out.println("User Clicked the Button");
    }
      });

这段语句是什么意思?为什么要用括号“()”把后面的这一部分都括起来?


本人的确很渣= =百度上的有些专业语句也看不太懂。。跪求大神耐心求解

java小学三班
浏览 1127回答 1
1回答
随时随地看视频慕课网APP

相关分类

Java
我要回答