自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 线程的父子关系

Thread的所有构造函数,最终都会去调用一个静态方法init,任何线程都会有一个父线程: private void init(ThreadGroup g, Runnable target, String name, long stackSize, AccessControlContext acc) { if (name == null) { throw new NullPointerException("name c

2021-01-04 13:54:12 493

原创 JDK8 双冒号用法

java8 :: 用法 (JDK8 双冒号用法)特性jdk8中使用了::的用法。就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下,双冒号运算就是Java中的[方法引用],[方法引用]的格式是: 类名::方法名 注意此处没有()。案例:表达式:person -> person.getAge();使用双冒号:Person::getAge表达式:new HashMap<>()使用双冒号:

2020-12-31 15:11:55 130

原创 2020-12-31线程名字

public Thread(Runnable target) { init(null, target, "Thread-" + nextThreadNum(), 0);}如果没有给线程指定名字,会默认有一个名字:"Thread-"+自增数字.例如:public static void main(String[] args) { IntStream.range(0,5).boxed().map(i-> new Thread(()->System.out.print.

2020-12-31 14:50:38 66

原创 2020-12-31Thread和Runnable的不同之处

创建线程的两种方式,创建Thread和实现Runnable接口,这种说法是不严谨的.准确的讲,创建线程只有一种方式那就是构造Thread类,而实现线程的执行单元则有两种方式,第一中是重写Thread的run方法,第二种是实现Runnable接口的run方法,并且将Runnable实例用作构造Thread的参数.注意:重写Thread类的run方法和实现Runnable的run方法还有一个很重要的不同,Thread类的run方法是不能共享的,也就是说,A线程不能把B线程的run方法当做自己

2020-12-31 14:32:31 73

原创 线程的生命周期(2020-12-14)

线程生命周期:在单cpu中,其实并没有真正的并行,它只不过是cpu的时间钟快速轮转调度带给你的感觉,让你觉得它们真的是在同一时刻运行.当然如果是多核cpu,那么并行还是真实存在的.对于计算机来说,每一个任务就是一个进程(process),在每一个进程内部至少要有一个线程(Thread)是在运行中,又是线程也称为轻量级进程.线程的生命周期分为五个阶段:NEWRUNNABLERUNNINGBLOCKEDTERMINATED...

2020-12-14 10:24:55 64

原创 排序

// java 8 排序private void sortUsingJava8(List<String> names){Collections.sort(names, (s1, s2) -> s1.compareTo(s2));}

2020-12-01 13:35:29 81

原创 DeferredResult异步处理业务

@Overridepublic DeferredResult<ApiResponse> loginByCode(LoginByCodeDTO loginByCodeDTO) { DeferredResult deferredResult = new DeferredResult(5000L); deferredResult.onTimeout(() -> deferredResult.setResult(ApiResponse.error(500, Const.DATA.

2020-10-14 13:50:11 257

原创 javaweb基础之--Servlet

@WebServlet(name = "MyFirstServlet", urlPatterns = {"/MyFirstServlet"})publicclass MyFirstServlet extendsHttpServlet {     privatestatic final long serialVersionUID

2017-08-30 09:33:28 227

转载 java基础之--抽象类

1. 抽象类不能被实例化(初学者很容易犯的错),如果被实例化,就会报错,编译无法通过。只有抽象类的非抽象子类可以创建对象。2. 抽象类中不一定包含抽象方法,但是有抽象方法的类必定是抽象类。3. 抽象类中的抽象方法只是声明,不包含方法体,就是不给出方法的具体实现也就是方法的具体功能。4. 构造方法,类方法(用static修饰的方法)不能声明为抽象方法。

2017-08-29 11:10:12 210

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除