import java.awt.*;
import java.awt.event.*;
public class Test2 {
private Frame f1;
private Button b1=new Button("OK");
private Button b2=new Button("Cancel");
private Button b3=new Button("Later");
private Button b4=new Button("Exit");
private LayoutManager l=new GridLayout(2,2); public Test2()
{
init();
f1.setVisible(true);
} public void init()
{
f1.setLayout(l);
f1.setLocation(500, 400);
f1.setSize(300, 250);
f1.setTitle("xiao.k窗口");

f1.add(b1);
f1.add(b2);
f1.add(b3);
f1.add(b4);

f1.addWindowListener(new WindowAdapter(){ @Override
public void windowClosing(WindowEvent e) {
// TODO Auto-generated method stub
System.exit(0);
}

});
}







public static void main(String[] args)
{
Test2 tt=new Test2();
}}最后run的时候显示
Exception in thread "main" java.lang.NullPointerException
at Test2.init(Test2.java:19)
at Test2.<init>(Test2.java:13)
at Test2.main(Test2.java:48)
错误。
为什么?谢谢