
java
文章平均质量分 60
dadada~
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java并发(2):重入锁、条件变量、synchronized
java并发同步ReentrantLock 锁条件变量 同步 如果多个线程都要对一个对象进行修改,那么最后的结果会取决于两个线程访问数据的顺序,这种情况称为竞态条件。为了避免多线程破坏数据,需要在编写代码时用到同步机制。 ReentrantLock 锁 下面是一个表示账户的类,演示了如何使用重入锁: import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public class Ac原创 2021-11-22 22:40:56 · 623 阅读 · 0 评论 -
java并发(一):创建线程、线程状态、线程属性
Java线程runnable 创建线程继承thread创建线程调用thread或runnable的run方法线程状态新建可运行阻塞和等待终止线程线程属性中断线程守护线程线程名线程优先级 runnable 创建线程 在一个单独线程中运行一个任务需要三步: 1.需要一个实现了Runnable接口的类,将这个任务需要执行的代码放到这个类的run方法中。 public class multithread implements Runnable{ public static void main(String[原创 2021-11-21 18:25:37 · 525 阅读 · 0 评论 -
Java lambda表达式
lambda表达式是一个可传递的代码块,传递之后可以被执行多次。 最简单的例子是排序时传入的定制比较器Comparator: class LenComparator implements Comparator<String> { public int compare(String first, String second){ return first.length() - second.length(); } } ... Arrays.sort(strings, new LenCompa原创 2021-11-20 17:55:38 · 459 阅读 · 0 评论 -
并发和并行,多任务和多线程
并发 concurrent 同一时刻内有多个程序处于运行状态,在多道程序且只有一个CPU的情况下体现为在同一时刻只有一个程序在占用CPU,其他程序挂起。 并行 parallel 多个CPU分别执行不同的程序,互不影响。 多任务 multitasking 操作系统通过给不同的程序分配CPU时间片来实现“同时”执行多个程序。 多线程 multithreaded 多线程是对程序才有的概念,一个程序“同时”完成多个任务,每个任务交给一个线程。 多进程 进程拥有自己独立的数据,而一个进程下的线程共享数据,所以多线程风原创 2021-11-18 16:57:40 · 596 阅读 · 0 评论 -
Java随机数
import java.util.Random; class RandomTest{ public static void main(String[] args) { int bound = 10; Random random1 = new Random(); for (int i = 0; i < 10; i++) { System.out.println(random1.nextInt(bound)); } long seed1 = System.nanoTi.原创 2021-07-04 16:35:37 · 118 阅读 · 0 评论 -
Java 单例模式
单例模式 懒汉式 - 线程不安全 class Singleton{ private static Singleton instance; private Singleton(){} public static Singleton getInstance() { if (instance == null) instance = new Singleton(); return instance; } } 懒汉式(懒加载)调用时才初始化,避免不必要的加载,提高程序运行效率。 以上代原创 2021-06-22 22:05:39 · 137 阅读 · 0 评论 -
Java List遍历
import java.util.ArrayList; import java.util.List; public class forEach_Iterator { public static void main(String[] args) { List<Integer> integerList = new ArrayList<>(); integerList.add(1); integerList.add(2);原创 2020-11-20 12:06:38 · 338 阅读 · 0 评论