- 博客(4)
- 收藏
- 关注
原创 方法的内存原理
add方法被调用,把add方法存放到栈内存,在栈内存开辟一处空间,add方法里面会开辟两个变量的空间,分别是a和b,a里存放的是10,b存放的是20,在执行add方法中的int c = a+b;add方法被调用完成之后,会把add方法从栈内存中清理掉,在运行main方法中的System.out.println(sum),输出sum的值为30。在调用main方法,把main方法存放到栈内存,在栈内存开辟一处空间,一直运行到main方法中的int sum = add(10,20);栈的特点是,先进后出。
2023-06-04 18:09:25
100
1
原创 线程不安全问题
线程不安全问题假设一个买票的程序发生了线程不安全就会很致命public class Demo2 { public static void main(String[] args) { //线程不安全和安全 Runnable run = new Ticker(); new Thread(run).start(); new Thread(run).start(); new Thread(run).start(); }
2021-06-10 19:52:18
334
原创 同步与异步&并发与并行
同步与异步&并发与并行1. 同步:排队执行,效率低安全2. 异步:同时执行,效率高不安全3. 并发:指两个或多个事件在同一个时间段内发生4. 并行:指两个或多个事件在同一时刻发生(同时同步按照我自己的理解就是,每一个程序都在等待前面的程序执行完然后自己在执行,不会出现前面正准备使用一个数据突然就被另一个程序先用了并改变了数据,导致之前的程序用不了之前的数据 (就等于排队打饭)异步是同时执行的很容易就出现上面说的情况 (就等于抢着打饭)并发是在同一个时间段内发生的比如有9个用户在8:
2021-06-10 19:19:21
231
原创 Java用Scanner类获得单个字符
Java用Scanner类获得单个字符要知道在Java的Scanner类中是没有输入单个字符的方法的理论上我们可以输入nextChar来获取键盘上的一个字符的对吧。但是没有这个方法那该怎么获取单个字符那?因为Scanner类中没有提供直接获取单个字符的方法那我们先用String类来接收在用字符串中的charAt方法来获取字符串中的字符这是获取了字符串中的第一个字符,因为Java的下标是从0开始的,所以这里输入0就是获取d字符串的第一个字符如此可知获取字符串中的最后一位字符为d.l
2020-12-17 15:32:41
5454
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人