美文网首页
Java中的访问修饰符

Java中的访问修饰符

作者: juconcurrent | 来源:发表于2019-06-12 21:33 被阅读0次

Java中的访问修饰符主要有以下4种:

  1. private
  2. protected
  3. default - 什么都不写
  4. public

这些修饰符可作用于属性、方法和类型,其中的类型主要包括class、interface、enum等。这些修饰符的访问权限范围又是怎样的呢?我们以一个表格来说明一下。

修饰符 当前java文件 同一个包 子类 其他的包 说明
public 我的东西任何人都可以分享。
protected × 我的东西可以和跟我一块住的那个人分享,
另外也可以跟不在家的儿子分享。
default × × 我的东西可以和跟我一块住的那个人分享。
private × × × 我什么都不跟别人分享,只有自己知道。

这儿需要特别说明三点:

  1. 这4种修饰符都可作用于当前java文件,而非网上说的当前类
  2. 在Java中,外部类只能使用public和default来进行修饰,而不能使用protected和private。所谓外部类,指的是java文件中最外层的根类。
  3. 这4种访问修饰符都只在编译期进行范围权限检查。而在运行期,我们可以通过反射机制,对任意位置的任意属性和方法进行访问。例如:可以对另外一个包下面的私有属性和私有方法进行访问。

说明1的例子:

/**
 * OuterClass为外部类类,而InnerClassB和InnerClassC为内部类
 * private修饰的内部类,可在当前java文件所访问,而非仅仅局限在当前类
 */
public class OuterClass {
    private static class InnerClassB {
        private int fieldB;
        private void methodB() {
        }
    }

    private static class InnerClassC {
        InnerClassB b = new InnerClassB();
        private void methodC() {
            b.methodB();
            b.fieldB = 3;
        }
    }
}

说明2的例子:

private不能修饰外部类 protected不能修饰外部类

相关文章

  • Java知识之修饰符

    Java中的修饰符 Java中的修饰符主要分为两类: 访问控制修饰符 非访问控制修饰符 访问控制修饰符分: pub...

  • Java的访问修饰符

    Java中的访问修饰符定义了变量,方法,构造函数或类的可访问性(范围)。Java中有4种访问修饰符: Public...

  • java中的修饰符

    java中的修饰符主要分为两种访问修饰符和非访问修饰符,下面就是具体的介绍啦,balalallala 一、访问修饰...

  • java的访问修饰符

    一. Java中的访问修饰符 Java面向对象的基本思想之一是封装细节并且公开接口。Java语言采用访问控制修饰符...

  • java学习笔记第二天

    java修饰符 java修饰符 java语言提供了很多修饰符,主要分为下面两类: 1.访问修饰符 2.非访问修饰符...

  • java基础-static

    概述 static 在java体系里的地位:java语言的一个修饰符,属于非访问修饰符,所谓访问修饰符就是控制访问...

  • 日常记忆Java修饰符

    Java修饰符 Java语言提供的很多修饰符,主要分为以下两类: 访问修饰符 非访问修饰符修饰符用来定义类、方法或...

  • Java 修饰符

    Java 修饰符 Java语言提供了很多修饰符,主要分为以下两类: 访问修饰符 非访问修饰符 修饰符用来定义类、方...

  • java修饰符有哪些?

    java修饰符有哪些? Java语言提供了很多修饰符,主要分为以下两类: 1、访问修饰符; 2、非访问修饰符。 (...

  • Java中访问修饰符和构造函数的一点总结

    Java访问修饰符 Java用于类的修饰符(2个)和限定符(2个) 注意:内部类可以拥有更多的访问修饰符 Java...

网友评论

      本文标题:Java中的访问修饰符

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