访问权限

Posted wenyule

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了访问权限相关的知识,希望对你有一定的参考价值。

访问权限

    这个很好理解, 你的东西你肯定不希望别人随意的看随意的访问. 对吧. java程序也是这样. 不是啥都是对外的. 有些东西自己享用就好了. 有些东西是留给自己后代的. 还有些东西是自己这一片邻居可以访问的. 最后还有一些是大家都能访问的.

java一共四种访问权限, 本节, 咱们先讲三个.

技术图片

看一下示例代码:

package com.xyq.bao;

 public class Person {
     String def = "def"; // 默认啥都不写就是包访问权限
     public String pub = "pub"; // 公共的
     private String pri = "pri"; // 自己的

     public static void main(String[] args) {
         Person p = new Person();
         // 自己类里,都没问题

         System.out.println(p.def);
         System.out.println(p.pub);
         System.out.println(p.pri);

     }
 }

自己包里的其他类里试试:

package com.lewen.day17;

public class TestPackagePerson {
    public static void main(String[] args) {
        Person p = new Person();
        System.out.println("test " + p.def);
        System.out.println(p.pub);

//        System.out.println(p.pri);    //会报错
    }
}

换个包试试

package com.lewen.opp;

import com.lewen.day17.Person;

public class TestPackagePerson {
    public static void main(String[] args) {
        Person p = new Person();

//        System.out.println(p.def);   //报错
        System.out.println(p.pub);   // 包外面的其他类. 只有public可以
//        System.out.println(p.pri);  //报错
    }
}

一般情况, 我们很少用包访问权限. 这种权限并不舒服. 说白了. 你家里的东西要么是都能让人看的, 要么就是自己用的. 很少会专门准备一些东西给你的邻居用的. 程序也一样. 很少会用默认的访问权限.

private: 自己藏起来偷摸的.

public: 大摇大摆的.邻居包可以访问到

以上是关于访问权限的主要内容,如果未能解决你的问题,请参考以下文章

教程4 - 验证和权限

gitlab 权限说明

webservice 权限控制

片段管理访问错误可见 return false

片段中的请求权限

片段中的请求权限不显示对话框