java中PUBLIC的一个问题,大家帮忙下

来源:百度知道 编辑:UC知道 时间:2024/05/22 06:47:02
test1.java
class test1
{
public static void main(String[] args)
{
test t=new test();
t.display();
}
}
test.java
class test
{
public void display()
{
System.out.println("System is running");
}
}
TEST1。java为什么不用import语句调用test这个类,就可以正常运行,而且,我不编译test.java,直接javac test1.java,编译不正常,这是为什么,哪位大哥解释下,小弟先谢了

不用import这个类是因为这两个类在同一包中,不用说明JAVA会在同一包中寻找类,而如果你不先编译这个类的话是找不到这个类的,所以会出现编译不正常。

test是非静态的类,不能直接调用。你将class前加上public应该就行了,这与权限修饰符的适用域有关。不加任何东西相当于是default,他的权限较小,不能调用其他包内的类和其他包内的非子类等。