Java包级别访问

我知道具有默认访问控制的类成员可以在包级别访问,但我对包级访问实际意味着什么感到困惑。 如果可以在包级别访问默认成员,那么在下面的示例中,我不应该在类Test2中看到它吗? 1级

package pkg1; public class Test { int i=0; } 

2级

 import pkg1.Test; public class Test2 { void get(){ Test t = new Test(); ti=0; } } 

请帮助我理解这个概念。 提前致谢。

包级别访问意味着只有在同一包中定义的类才能访问包级别变量。 如果你必须导入Test ,那么我假设Test在一个不同的包中,因此它无法访问i

要使Test2访问i ,请在与Test1相同的包中定义它。

你忘了写

 package pkg1; 

对于Test2类。

它现在应该工作