首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
第一章:函数式编程思想
1.1 概述
1.2 冗余的匿名内部类
1.3 编程思想的转换
1.4 体验 Lambda 的优雅写法
1.5 函数式编程和面向对象编程区别
第二章:Lambda 表达式
2.1 函数式接口
2.2 Lambda 表达式的语法
2.3 IDEA 中的快捷键
2.4 Lambda 表达式的练习
2.5 方法引用和构造器引用
第三章:Stream API
3.1 概述
3.2 Stream 流的操作步骤
3.3 创建 Stream
3.4 中间操作
3.5 终止操作
第四章:Optional 类
4.1 概述
4.2 创建 Optional 对象
4.3 从 Optional 容器中获取元素
4.4 Optional 的判断方法
当前位置:
首页>>
技术小册>>
Java语言基础16-JDK8 新特性
小册名称:Java语言基础16-JDK8 新特性
- 当需要启动一个线程去完成任务的时候,通过会通过 java.lang.Runnable 接口来定义任务内容,并使用 java.lang.Thread 类来启动该线程,代码如下: ``` package com.github.demo1; /** * @author maxiaoke.com * @version 1.0 * */ public class Test { public static void main(String[] args) { // 匿名内部类 Runnable runnable = new Runnable() { @Override public void run() { System.out.println("多线程任务执行!!!!"); } }; // 启动线程 new Thread(runnable).start(); } } ``` - 本着“一切皆对象”的思想,这样的做法无可厚非的:首先创建 Runnable 接口的匿名内部类对象来指定任务内容,然后将其交给一个线程来启动。 - 代码分析: - 对于Runnable 的匿名内部类的用法,可以分析出以下几点: - ① Thread 类需要 Runnable 接口作为参数,其中的抽象 run 方法是用来指定线程任务内容的核心。 - ② 为了指定 run 的方法体,不得不 需要 Runnable 接口的实现类。 - ③ 为了省去定义一个 Runnable 实现类的麻烦,不得不 实现匿名内部类。 - ④ 为了覆盖重写抽象 run 方法,其方法名称、方法参数、方法的返回值 不得不 重写一遍,且不能写错。 - 但是,实际上,方法体才是关键所在 。
上一篇:
1.1 概述
下一篇:
1.3 编程思想的转换
该分类下的相关小册推荐:
JAVA 函数式编程入门与实践
Java语言基础7-Java中的异常
Java语言基础2-运算符
Java语言基础8-Java多线程
SpringBoot合辑-初级篇
Java面试指南
Mybatis合辑3-Mybatis动态SQL
Java必知必会-JDBC
Java性能调优实战
Java必知必会-Maven高级
深入拆解 Java 虚拟机
Java语言基础9-常用API和常见算法