我是Java的新手,我一直在尝试设置一个框架,但是我的代码不起作用,或者因为代码错误,或者因为我的软件有问题。我正在使用Eclipse。
所以这是我的代码:
(x_prev,y_prev)
它返回
方法main不能声明为static;静态方法只能是 在静态或顶级类型中声明
答案 0 :(得分:1)
问题是你在内部类中声明了main方法。这就是抛出的异常意味着什么。 这对你有用。
package Frame;
import javax.swing.JFrame;
class FrameApp extends JFrame{
public FrameApp(String name){
super(name);
}
}
public class App {
public static void main(String[] args) {
FrameApp frame = new FrameApp("FirstFrame");
frame.setTitle("MFF");
frame.setSize(300, 700);
frame.setVisible(true);
}
}
享受! :)
答案 1 :(得分:0)
你可以这样做,这不是扩展JFrame。
import javax.swing.JFrame;
public class App{
public App() {
JFrame frame = new JFrame("FirstFrame"); // This sets the title
frame.setTitle("MFF"); // Then you're resetting the title
frame.setSize(300, 700);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new App();
}
}
或者你可以扩展它
import javax.swing.JFrame;
public class App extends JFrame{
public App() {
// When you extend JFrame you're essentially creating a JFrame
// This gets into OOP (which you of course need to learn)
// Since you've extended the JFrame you can directly access its methods
// like setTitle, setSize....
setTitle("MFF");
setSize(300, 700);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new App();
}
}
我对Swing肯定不是很有经验,但在选择一种方法时 在另一个。我选择不扩展框架。并回答你的问题 问题,没有理由在App类中放置另一个类 只是创建这个简单的
JFrame
,这就是为什么我改为 上方。