Java关于访问控制权限

package com.bjpowernode.Java03;

/**
 * 访问控制权限修饰符:
 *        1、访问控制权限修饰符来控制元素的访问范围
 *        2、访问控制权限修饰符包括
 *            public        表示公开的,在任何位置都可以访问
 *            protected    同包,子类
 *            缺省            同包
 *            private        表示私有的,只能在本类中访问
 *        3、访问控制权限修饰符可以修饰类、变量、方法...
 *        4、当某个数据只希望子类使用,使用protected进行修饰。
 *        5、修饰的范围:
 *            private < 缺省  < protected < public
 */
public class Test01 {

    public static void main(String[] args) {
        User u = new User();
        System.out.println(u.i);
        System.out.println(u.j);

    }

}

// ----------------------------------------------------------------------

package com.bjpowernode.Java03;

public class User {
    // 受保护
    protected int i = 10;
    
    // 缺省的
    int j = 20;
    
    // 私有的
    private void m1() {}
    
    // 公开的
    public void m2() {}
    
    // 只能同包,子类中访问
    protected void m3() {
        
    }
    
    // 缺省只能同包访问
    void m4() {}
    
    
}

// -----------------------------------------------------------------------

package com.bjpowernode.Java04;

// 类只能采用public和缺省的修饰符进行修饰。【内部类除外】

import com.bjpowernode.Java03.User;
public class UserTest { public static void main(String[] args) { User u = new User(); System.out.println(u.i); System.out.println(u.j); } } // --------------------------------------------------------------------- public class UserTest extends User{ public void m() { User u = new User(); System.out.println(this.i); // System.out.println(this.j); 缺省,不能夸包 } }
原文地址:https://www.cnblogs.com/Axianba/p/15070265.html