Java 访问控制修饰符

本文涉及的产品
访问控制,不限时长
简介: Java学习笔记

Java语言提供了很多修饰符,主要分为以下两类:

  • 访问修饰符
  • 非访问修饰符


访问控制修饰符

Java中,可以使用访问控制符来保护对类、变量、方法和构造方法的访问。Java 支持 4 种不同的访问权限。

default (即默认,什么也不写)

在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。

使用默认访问修饰符声明的变量和方法,对同一个包内的类是可见的。接口里的变量都隐式声明为 public static final ,而接口里的方法默认情况下访问权限为 public 

voidstart() {
//...}


private

在同一类内可见。使用对象:变量、方法。 注意:不能修饰类(外部类)

私有访问修饰符是最严格的访问级别,所以被声明为 private 的方法、变量和构造方法只能被所属类访问,并且类和接口不能声明为 private

声明为私有访问类型的变量只能通过类中公共的 getter 方法被外部类访问。

publicclassAnimal {
privateStringname;
privatedoubleweight;
publicAnimal() {
    }
publicAnimal(Stringname, doubleweight) {
this.name=name;
this.weight=weight;
    }
publicStringgetName() {
returnname;
    }
publicdoublegetWeight() {
returnweight;
    }
}

public

对所有类可见。使用对象:类、接口、变量、方法

被声明为 public 的类、方法、构造方法和接口能够被任何其他类访问。

publicstaticvoidmain(String[] args) {
// ...}


protected

对同一包内的类和所有子类可见。使用对象:变量、方法。 注意:不能修饰类(外部类)。

接口及接口的成员变量和成员方法不能声明为 protected,否则IDEA会报错:

image.png

相关实践学习
消息队列+Serverless+Tablestore:实现高弹性的电商订单系统
基于消息队列以及函数计算,快速部署一个高弹性的商品订单系统,能够应对抢购场景下的高并发情况。
云安全基础课 - 访问控制概述
课程大纲 课程目标和内容介绍视频时长 访问控制概述视频时长 身份标识和认证技术视频时长 授权机制视频时长 访问控制的常见攻击视频时长
相关文章
|
2月前
|
安全 Java 数据安全/隐私保护
如何配置 Java 安全管理器来避免访问控制异常
配置Java安全管理器以防止访问控制异常,需在启动JVM时通过 `-Djava.security.manager` 参数启用,并设置安全策略文件,定义权限规则,限制代码执行操作,确保应用安全。
147 1
|
7月前
|
安全 Java 编译器
【Java开发指南 | 第四篇】Java常量、自动类型转换、修饰符
【Java开发指南 | 第四篇】Java常量、自动类型转换、修饰符
55 4
|
5月前
|
设计模式 安全 Java
Java面试题:请解释Java中的四种访问控制符及其作用范围,请解释Java中的垃圾回收机制及其工作原理,请解释Java中的并发工具包及其主要用途
Java面试题:请解释Java中的四种访问控制符及其作用范围,请解释Java中的垃圾回收机制及其工作原理,请解释Java中的并发工具包及其主要用途
38 0
|
5月前
|
安全 Java 数据库
在Java中实现高并发的数据访问控制
在Java中实现高并发的数据访问控制
|
5月前
|
监控 安全 Java
Java中的权限管理与访问控制策略
Java中的权限管理与访问控制策略
|
7月前
|
Java
Java的修饰符混用
Java的修饰符混用
|
6月前
|
Java 数据安全/隐私保护
Java基础手册二(类和对象 对象创建和使用 面向对象封装性 构造方法与参数传递 this关键字 static关键字 继承 多态 方法覆盖 final关键字 访问控制权限修饰符)
Java基础手册二(类和对象 对象创建和使用 面向对象封装性 构造方法与参数传递 this关键字 static关键字 继承 多态 方法覆盖 final关键字 访问控制权限修饰符)
37 0
|
6月前
|
安全 Java 数据安全/隐私保护
Java基础之访问控制关键字
Java访问控制关键字包括public、protected、default和private。public成员可从任何地方访问,protected允许同包和子类访问,default仅限同包,而private只限类内部。选择修饰符应考虑数据封装和安全,优先使用最严格的访问级别。
41 0
|
7月前
|
机器学习/深度学习 存储 前端开发
【Java开发指南 | 第十篇】Java修饰符
【Java开发指南 | 第十篇】Java修饰符
43 3
|
7月前
|
前端开发 Java 数据安全/隐私保护
Java 修饰符
4月更文挑战第7天