Java 主类实例访问



我无法编译以下代码。无法理解这里的编译过程。为什么主类实例对其他类不可见(test1)。为什么它在编译时失败。请帮忙。

public class test {
    public int i = 10;
    public static void main(String[] args) {
           System.out.println("test main");
    }
}
class test1 {
     test t = new test();
     System.out.println(t.i);
 }

System.out.println(t.i);语句应位于块或方法中。

例如,您可以将其放置在块中(静态或非静态,没关系)。

public class test1 {
    test t = new test();
    static { //static can be omitted
        System.out.println(t.i);
    }
}

位置在方法内

public class test1 {
    test t = new test();
    public static void printSomething() { //static can be omitted
        System.out.println(t.i);
    }
}

更多信息(感谢@vidudaya):

  • 为什么System.out.println()必须在方法中?
System.out.println(t.i); 

必须在某个方法中。

public class Test {
    public int i = 10;
    public static void main(String[] args) {
        System.out.println("test main");
    }
}

class Test1 {
    Test t = new Test();
    public void printI(){
        System.out.println(t.i);
    }
}

还要坚持 java 命名约定。类名必须以大写字母开头。变量和方法必须采用驼峰大小写。

相关内容

  • 没有找到相关文章

最新更新