错误:请将main方法定义为:public static void main(String [] args)

时间:2013-03-13 10:52:41

标签: java

执行以下程序时,我收到错误消息     “错误:在Parent_Package.Parent类中找不到主要方法,请将main方法定义为:        public static void main(String [] args)“..................     任何人都可以知道如何解决这个问题吗?

First Package
==============
package Parent_Package;

public class Parent {
     int money = 100;enter code here
     protected  void give_Money(){
    money = money-10;
     System.out.println(money);
}
}

======================
Second Package
===================================
 package Child_Package;

 import Parent_Package.Parent;

 class Child extends Parent{
        public void donate() {
            give_Money();
        }

    }

 class Friend {
     public static void main(String[] args){
    Child c = new Child();
    c.donate();

    }
}

==================================================</body></html>

4 个答案:

答案 0 :(得分:8)

运行此Java程序时,您需要运行Friend类,因为这是唯一一个带有main方法的类。

看起来您正在运行没有定义主方法的Parent类。

答案 1 :(得分:2)

具有class方法的main应标记为public

所以,将class Friend设为public class Friend

运行java Friend而不是java Parent

答案 2 :(得分:0)

默认情况下,运行包含多个类的文件将运行公共文件(只有一个文件可以在一个文件中公开)。 在您的代码中,Parent是公共calss,它不包含main方法。这就是它找不到主要方法的原因。

答案 3 :(得分:0)

由于您尚未将Parent类标记为public,因此将分配“default”访问修饰符。在java中,类只能看到另一个包中存在的“公共”类。由于您的朋友被标记为默认(通过编译器),因此Child类将无法看到Parent类。