Java类成员默认访问权限(包访问权限)

Java中,当一个类的某个成员变量前面不带任何权限修饰(private,protected,public),这种成员变量在Java中,会默认一种访问权限,包内部访问权限。即包内其他类可以访问该类,但是该类在包外部的其他类不能访问。

上一个简单的实例

package com.ggboy.partone;

public class PrivilegeDemo {
    String mOne = "Hello";
    public String mTwo = "World";
}
package com.ggboy.partone;

public class PrivilegeTest {
    public static void main(String[] args) {
        System.out.println(new PrivilegeDemo().mOne);
        System.out.println(new PrivilegeDemo().mTwo);
    }
}

上面跟下面的两个Test类的区别在于,上面的PrivilegeTest跟PrivilegeDemo在同一个包下,而PrivilegeTest_在另一个包下。

package com.ggboy.parttwo;
import com.ggboy.partone.PrivilegeDemo;

public class PrivilegeTest_ {
    public static void main(String[] args) {
    	System.out.println(new PrivilegeDemo().mOne);
        System.out.println(new PrivilegeDemo().mTwo);
    }
}

此时编辑器会在PrivilegeTest_ 的“System.out.println(new PrivilegeDemo().mOne);”这个位置报如下错误
‘mOne’ is not public in ‘com.ggboy.partone.PrivilegeDemo’. Cannot be accessed from outside package

你可能感兴趣的:(Java类成员默认访问权限(包访问权限))