JFrame为什么不能在主方法外的类实例化对象
paimport javax.swing.*;
public class ad { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub }}
class ac {
JFrame asd = new JFrame("asdf");
asd.setSize(400,300);
}
如上,在ac类里面asd.setSize(400,300);语句不停报错,想不明白为什么,跪求解释 >。<~
paimport javax.swing.*;
public class ad { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub }}
class ac {
JFrame asd = new JFrame("asdf");
asd.setSize(400,300);
}
如上,在ac类里面asd.setSize(400,300);语句不停报错,想不明白为什么,跪求解释 >。<~
public class test{
TestClass tc = new TestClass();
tc.setName("name");
}
你看看他能编译不。
正确的应该是这样
public class test{
public static void main(String[] arg){
TestClass tc = new TestClass();
tc.setName("name");}
}
像你那样,没有方法,只有方法体算什么。就像人没有头只有身体
public static void main(String[] arg){
TestClass tc = new TestClass();
tc.setName("name");}
}
public class Mao {
JFrame jf =null;
/**
* 在这个类的构造方法里实例化JFrame让Test类调用
*/
public Mao() {
super();
this.jf = new JFrame();
}
/**
* 在这个类的一个方法中实例化一个JFrame让Test类调用
* @return
*/
public JFrame getFrame(){
jf = new JFrame();
jf.setTitle("测试方法返回JFrame");
jf.setSize(400, 400);
return jf;
}
}
import javax.swing.JFrame;
public class Test {
public static void main(String[] arg){
/**
* 测试构造方法中的JFrame实例化
*/
// Mao m = new Mao();
// m.jf.setSize(400, 400);
// m.jf.setTitle("测试构造方法中实例化的JFrame");
// m.jf.show();
/**\
* 测试类里的公共方法中的JFrame实例化
*/
// Mao m = new Mao();
// m.getFrame().show();
/**
* 内部类测试
*/
CJFrame.getFrame().show();
}
/**
* 内部类JFrame
*/
static class CJFrame{
/**
* 内部类JFrame实例化
* @return
*/
public static JFrame getFrame(){
JFrame jf = new JFrame();
jf.setTitle("测试内部类方法实例化并返回JFrame");
jf.setSize(400, 400);
return jf;
}
}
}