使用 JOption Pane 时不打印消息

问题描述 投票:0回答:1

我在 java 中做这个简单的代码来学习没有参数的空方法并且不打印我。不知道是什么,是netbeans吗?我希望能够使用该方法。

package casa;

            import javax.swing.JOptionPane;


            public class Casa {

            public static void main(String[] args) {
            Casa obj = new Casa();
            obj.HolaQueTal();
       
            }

            public void HolaQueTal() {

            JOptionPane.showMessageDialog(null, "Hello World");
            }
     
   
            }  
java methods netbeans joptionpane
1个回答
0
投票

只是一个奇怪的点,主类调用自己“到 main() 方法内的变量引用上”是永远不明智的。启动一个不同的类,可能出于任何目的。

递归调用类加载并给Casa类一个构造函数来调用方法

以下是启动主类并避免变量和方法调用上的“静态上下文”的正常方法。

package casa;

            import javax.swing.JOptionPane;


            public class Casa {

// constructor
public Casa(){
holaQueTal(); // by convention all methods start with lowercase letter symbol.
}


            public static void main(String[] args) {
            new Casa(); // recursive call to itself to construct outside of static
           }// end of main method
       
            

            public void holaQueTal() {
        JOptionPane.showMessageDialog(null, "Hello World");
            }
     
   
            }  // end of class

您编写的代码很容易陷入变量和方法调用所在的“静态上下文”问题。

HolaQueTal() 方法在您的代码中应该是“静态的”。

不常说,main()方法的唯一用途是 1. 启动程序。 2. 组织任何 String args[] 命令行参数。其他一切,包括使用 Java API 框架中的类和方法,几乎总是“非静态的”。

© www.soinside.com 2019 - 2024. All rights reserved.