美文网首页java之路
JavaSE梳理五:访问权限控制(具体实现的隐藏)

JavaSE梳理五:访问权限控制(具体实现的隐藏)

作者: 今天比昨天努力 | 来源:发表于2019-11-05 16:10 被阅读0次

    1--Java解释器

    负责class文件的查找,装载和解释。

    运行过程:首先找出环境变量,CLASSPATH包含一个或多个目录,用来查找.class文件的根目录。从根目录开始,解释器获取包的名称并将每个句点替换成反斜杠,以从CLASSPATH根中产生一个路径名称。得到的路径会与CLASSPATH中各个不同的项相连接,解释器就在这些目录中查找与你所要创建的类名称相关的class文件。

    Java并不是总是将当前目录作为查找行为的起点,需要你在CLASSPATH添加一个“.”作为一个路径

    2--包访问权限

        1,Public:接口访问权限,本类,本包,子类,外部类都可以访问。

        2,默认包:同处于相同的目录并且没有给自己设定任何的包名称,Java将这样的文件自动看作默认包中,会拥有包访问权限。

        3,private:你无法访问。只有本类可以访问。适合场景有:多线程环境

        4,protected:继承访问权限。可以访问本类,包访问权限,子类。

    3--封装

    把数据和方法包装到类中,以及具体实现的隐藏,共同被称为封装。结果是:一个同时具有特性和行为的数据类型。

    访问权限控制将权限的边界划在了数据类型的内部有两个原因:原因一:设定客户端程序员可以使用和不可以使用的界限。原因二:接口和具体实现进行分离。

    4--类的访问权限

    访问权限修饰词也可以用在类上。对于类的访问权限:仅有public或者包访问权限。

    Public限制:每个文件(编译单元)只能有一个public类,public类的名称必须完全与含有该文件的文件名相匹配,包括大小写。文件中不带public也是可以的,但是习惯不好,最好不要这样。

    注意:类既不可以是private(这样导致其他任何类都不可以使用它,毫无意义了。),也不可以是protected。如果不想其他任何人访问此类,可以把所有构造器指定为private,但是static依然是可以通过类访问的。

    相关文章

      网友评论

        本文标题:JavaSE梳理五:访问权限控制(具体实现的隐藏)

        本文链接:https://www.haomeiwen.com/subject/lgqebctx.html