publicclasshh{publicstaticvoidmain(String[]args){ilikelike=(a)->{System.out.println("ad"+a);};like.lambda(2);**只带有一个参数可以简化为:**ilkelike=a->{System.out.println("ad"+a);};只带有一个参数和一行代码可简化为:ilkelike=
分类:
编程语言 时间:
2019-08-07 17:26:51
阅读次数:
153
Lambda表达式简化线程(用一次并且比较简单)的使只能是一个方法//匿名内部类,必须借助接口或父类newThread(newRunnable(){publicvoidrun(){for(inti=0;i<5;i++){System.out.println("me");}}}).start();//使用lambda简化,将接口名和方法名去掉,只要参数和方法体newThread(()->
分类:
编程语言 时间:
2019-08-07 16:04:25
阅读次数:
110
实现callable接口加泛型,即返回的值类型,默认为Object重写的call方法可以有返回值,可以抛出异常publicclassThreadDownloadimplementsCallable<Boolean>{publicBooleancall()throwsException{returntrue;}publicstaticvoidmain(String[]args)throw
分类:
编程语言 时间:
2019-08-07 10:42:51
阅读次数:
109
单继承具有局限性,推荐使用Runnable接口,启动线程必须借用Thread类对象newThread(Run,Strings).start(),newThread()可以传字符串Thread.currentThread().getName();当前线程的名字,即传入的字符串重写的run()方法没有返回值,且不能抛出异常Thread.sleep(200);暂停该线程200毫秒延迟,1000毫秒约等于
分类:
编程语言 时间:
2019-08-06 12:27:25
阅读次数:
117
单继承具有局限性,推荐使用Runnable接口,启动线程必须借用Thread类对象newThread(Run).start()publicvoidrun(){for(inti=0;i<5;i++){System.out.println("aa");}}publicstaticvoidmain(String[]args){ThreadDownloadra=newThreadDownload()
分类:
编程语言 时间:
2019-08-05 21:48:41
阅读次数:
122
|--需求说明 |--实现方式 在run()方法里面写一个while循环,循环体里面执行一个加过synchronized的方法,这个方法下面加一个判断语句,当线程名为“黄牛党”的时候,退出这个线程 |--代码内容 1 package cn.thread1; 2 3 import java.util. ...
分类:
编程语言 时间:
2019-08-05 17:28:18
阅读次数:
140
一、进程/线程: 1.进程:是一个正在执行的程序;进程是资源管理的最小单位; //每一个进程执行都有一个执行顺序;该顺序是一个执行路径,或者叫一个执行单元; 2.线程:是进程中一个独立的控制单元;线程不能管理资源; //线程在控制着进程的执行; PS:一个进程中至少有一个线程; 二、创建线程的两种方 ...
分类:
编程语言 时间:
2019-08-05 13:44:33
阅读次数:
92
1. Java多线程通过继承Thread和实现Runnable接口来实现多线程。 2. 数据同步通过synchronized关键字来实现 3. 线程直接的通信:wait,notify,notifyAll等方法实现唤醒和通知。 4. 线程的生命周期 5. 死锁问题和线程的优先级。 ...
分类:
编程语言 时间:
2019-08-03 12:42:28
阅读次数:
78
文章来源:微信公众号:猿天地 1. 死锁的概念: 是Java多线程情况下,两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞现象,若无外力作用,它们都讲无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在相互等待的进程成为死锁进程。 2. 出现死锁的条件: ( ...
分类:
编程语言 时间:
2019-08-01 22:46:30
阅读次数:
154