Java - 如何在同一个文件中包含2个类?

时间:2014-10-03 03:03:21

标签: java class netbeans

我试图在一个文件中包含两个或更多个类,但java只是向我抛出此错误消息! 如何在1个文件中包含2个或更多?

Exception in thread "main" java.lang.ExceptionInInitializerError
    at javaapp.main(javaapp.java:25)
Caused by: java.lang.RuntimeException: Uncompilable source code - class functions1 is public, should be declared in a file named functions1.java
    at functions1.<clinit>(javaapp.java:11)
    ... 1 more
Java Result: 1



public class functions1 {
    public String Print(String text){
        System.out.println(text);
        return text;
    }
}

public class javaapp {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        functions1 Func = new functions1();
        Func.Print("You're learning Java!!!!!");


    }

}

3 个答案:

答案 0 :(得分:2)

Juned Ahsan的回答是正确的,但如果你想在同一个文件中使用2个类,你有一个选项。使用inner class。检查此示例

public class OuterClass {
    int outerVariable = 100;

    class InnerClass {
        int innerVariable = 20;

        int someMethod(int parameter) {
           //Do something.
        }       
    }

    public static void main(String[] args) {
        OuterClass outer = new OuterClass();
        InnerClass inner = outer.new InnerClass(); 
        System.out.println(inner.someMethod(3));
    }
}

还要从oracle检查this

答案 1 :(得分:1)

您只能在编译单元或.java文件中拥有一个公共类。如果您只是从公共说明符中取出functions1

,那么您的代码应该提供所需的输出
public class functions1 {

转换为

class functions1 {

答案 2 :(得分:-1)

先生,您应该使用内部类,这是一个更好的选择,您可以私下访问您的类字段,您的类代码将是独立的