Java常见面试题:方法变量与同步

简介: 方法中的变量都是局部变量,如果我们去考虑线程安全性问题,一定是在多个线程访问同一个资源的时候进行的。既然是同一个资源,就必须考虑Runnable、Callable接口来实现多线程处理关系。

方法中的变量是否是线程安全?

方法中的变量都是局部变量,如果我们去考虑线程安全性问题,一定是在多个线程访问同一个资源的时候进行的。既然是同一个资源,就必须考虑Runnable、Callable接口来实现多线程处理关系。
方法的定义上如果使用了synchronized,那么这个方法中就表示同步的处理操作,这个同步的处理操作指的是当前的方法只允许有一个线程进入。

image.png
image.png
image.png
image.png
image.png

每次执行的时候都会只有一个线程进入到sale()方法,但是会有其它的方法等待进入处理。在一个同步线程的处理之中,肯定变量是同步的,如果说你现在取消了同步。

image.png
image.png
image.png
image.png
线程同步处理之中不会去考虑方法中的参数,只会考虑类中的属性。

更多专业知识,面试技巧就在阿里云开发者社区,持续更新中……
感谢浏览~
本内容来源于阿里云大学-Java面试技巧

相关文章
|
2天前
|
存储 Java 索引
Java快速入门之数组、方法
### Java快速入门之数组与方法简介 #### 一、数组 数组是一种容器,用于存储同种数据类型的多个值。定义数组时需指定数据类型,如`int[]`只能存储整数。数组的初始化分为静态和动态两种: - **静态初始化**:直接指定元素,系统自动计算长度,如`int[] arr = {1, 2, 3};` - **动态初始化**:手动指定长度,系统给定默认值,如`int[] arr = new int[3];` 数组访问通过索引完成,索引从0开始,最大索引为`数组.length - 1`。遍历数组常用`for`循环。常见操作包括求和、找最值、统计特定条件元素等。
|
1天前
|
算法 Java API
Java 方法注释:规范、实用和高质量的写法
本文深入探讨了如何编写高质量的 Java 方法注释
21 11
|
1天前
|
SQL Java 数据库连接
【潜意识Java】Java中JDBC过时方法的替代方案以及JDBC为什么过时详细分析
本文介绍了JDBC中一些常见过时方法及其替代方案。
19 5
|
11天前
|
监控 Dubbo Java
Java Dubbo 面试题
Java Dubbo相关基础面试题
|
11天前
|
SQL Java 数据库连接
Java MyBatis 面试题
Java MyBatis相关基础面试题
|
11天前
|
存储 监控 算法
Java JVM 面试题
Java JVM(虚拟机)相关基础面试题
|
11天前
|
SQL 监控 druid
Java Druid 面试题
Java Druid 连接池相关基础面试题
|
11天前
|
缓存 安全 算法
Java 多线程 面试题
Java 多线程 相关基础面试题
|
SQL 缓存 安全
Java高频面试题目
面试时面试官最常问的问题总结归纳!
158 0
JAVA高频面试题目集锦(6)
JAVA高频面试题目集锦(6)
153 0
JAVA高频面试题目集锦(6)