Java-如何在主类中运行init方法

Java-如何在主类中运行init方法,java,Java,我想运行我的gui,但我真的不知道如何初始化这个类。我正在从python过渡到Java,所以我对这方面还是相当陌生的。代码可以运行,我只需要知道如何运行它 import javax.swing.*; import java.awt.*; // Where the main run function for the application will lie public class MainWindow extends JFrame{ public void init(){

我想运行我的gui,但我真的不知道如何初始化这个类。我正在从python过渡到Java,所以我对这方面还是相当陌生的。代码可以运行,我只需要知道如何运行它

import javax.swing.*;
import java.awt.*;

// Where the main run function for the application will lie
public class MainWindow extends JFrame{
    public void init(){

        // Initial window
        JFrame startFrame = new JFrame("P.D");
        startFrame.setSize(1200, 800);
        startFrame.setVisible(true);
        startFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // Panel to hold our buttons
        JPanel startPanel = new JPanel();
        startFrame.add(startPanel);


        // Button to initialize everything
        JButton startButton = new JButton("Start");
        startPanel.add(startButton);
        startFrame.setLayout( new GridBagLayout() );
        startFrame.add(startButton, new GridBagConstraints());


        // Take out the border around the text
        startButton.setFocusable(false);

    }
    public static void main(String[] args) {



    }
}

如何在静态void main(String[]args)下运行init()方法?

假设您只需在main方法中创建一个新的MainWindow对象并调用
init()方法

public static void main(String[] args){

        new MainWindow().init();

    }

您还可以通过使函数为静态来运行该函数。 就像python中的“静态方法”

。。 以及:


您可以实现构造函数而不是init()方法,并且可以像下面这样启动gui

public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            new MainWindow().setVisible(true);
        }
    });
}
  public static void main(String[] args) {
      init();

}
public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            new MainWindow().setVisible(true);
        }
    });
}