Java
Python前端运维数据库
Java
Java
  • 新特性
    • Record
    • Optional
  • 面向对象
    • 面向对象基础
    • 构造方法
    • 继承与多态
    • 接口
    • 修饰符
    • 代码块
    • 接口(Interface)
    • 枚举类
  • IO流
    • IO
      • 字节流
      • 字符流
      • 缓冲流
      • 转换流
      • 操作ZIP
      • File 对象
    • NIO
      • Channel和Buffer
      • 异步文件通道AsynchronousFileChannel
      • Selector
      • Path/Files/Pipe
  • 反射
  • 内存分配
  • 集合
    • 简介
    • List
    • Set
    • Map
    • EnumMap
  • 日期与时间
    • Date和Calendar
    • Java8 新时间 ✨
      • LocalDateTime
      • ZonedDateTime
      • Duration
    • 时间格式化
      • SimpleDateFromat
      • DateTimeFormatter ✨
    • Instant
    • 实践
  • 网络编程
    • IP 地址
    • 网络模型
    • TCP 编程
    • UDP 编程
    • HTTP 编程
  • 加密和安全
  • 并发编程
    • 多线程
    • 线程与进程的区别
    • 线程组和线程优先级
    • 线程池
    • 线程锁
  • 异步任务
    • Future
    • CompletableFuture
      • 开启异步任务
      • 串行任务方法
      • 并行任务方法
      • 任务结束方法
      • 异常处理方法
      • 查看状态方法
      • 设置任务结果方法
  • 执行系统命令
  • Stream 流
    • Stream 流的创建
    • Stream 流串行与并行
    • Stream 流中间操作
    • Stream 流终端操作
  • Lambda 表达式
    • Lambda 表达式简介
    • Lambda 表达式语法
    • 方法引用
  • String
  • StringBuffer
由 GitBook 提供支持
在本页
  • 访问修饰符(权限修饰符)
  • 非访问修饰符

这有帮助吗?

  1. 面向对象

修饰符

修饰符用来定义类、方法或属性的可见性、访问权限和行为。

修饰符主要分为以下两类:

  • 访问修饰符

  • 非访问修饰符

访问修饰符(权限修饰符)

在 Java 中,可以使用访问修饰符来控制类、属性、方法和构造方法的访问。

  • default(package-private):如果没有指定访问修饰符,则默认为访问级别,在同一包内可见。

  • private:私有修饰符,只能在当前类中访问。其他类无法直接访问。

  • public:公共修饰符,表示对所有类可见。可以在任何地方访问。

  • protected:受保护修饰符,表示可以在当前类、同一包内的其他类以及该类的子类中访问。其他包中的类无法直接访问。

修饰符
当前类
同一包内
子孙类(同一包)
子孙类(不同包)
其他包

public

Y

Y

Y

Y

Y

protected

Y

Y

Y

Y/N

N

default

Y

Y

Y

N

N

private

Y

N

N

N

N

public class Person {
    private String name;
    private int age;
    
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
    
    public void sayHello() {
        System.out.println("Hello, my name is " + name + " and I'm " + age + " years old.");
    }
}

非访问修饰符

  • static:静态修饰符,用来修饰方法或类变量。

  • final:最终修饰符,用来修饰类、方法和属性,final修饰的类不能被继承,修饰的方法不能被继承类重新定义,修饰的变量为常量,不可修改。

  • abstract:抽象修饰符,用来创建抽象类和抽象方法。

  • synchronized:一次只能有一个线程访问该方法或代码块。

  • volatile:变量被多个线程访问,其值应始终从主内存中读取。

  • transient:对象转换为字节流时,该变量不会被序列化。

上一页接口下一页代码块

最后更新于1年前

这有帮助吗?