PHP笔记网

革命尚未成功,同志仍须努力下载JDK17

作者:Albert.Wen  添加时间:2013-03-03 17:59:47  修改时间:2024-12-04 13:26:16  分类:07.Java基础  编辑

Java  |  Spring  |  Spring MVC  |  Spring Boot  |  Slf4j  |  MyBatis  |  Quartz  |  Beetl模板

  1. Java项目 Maven仓库常用pom.xml  、Java文章 Netty收藏Maven收藏 安装Java/Maven 、JSch收藏 、JGit收藏
  2. IDEA 个性化设置/快捷键 、常用Live Templates:main 、sout

Java8 新特性

(1)Java 8 教程 、(2)Java8官网教程 、(3)使用Stream接口,List转Map,List去重、(多字段)排序、交集、差集、并集

序号 特性 文章
1 默认方法:默认方法就是一个在接口里面有了一个实现的方法。 [菜鸟]默认方法
2 函数式接口:函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口(即 默认方法
  1. [菜鸟]函数式接口
  2. 【Java8特性】 内置的四大核心 函数式接口
  3. 【Java8特性】自定义 函数式接口 使用技巧举例
3 Lambda 表达式:Lambda 允许把函数作为一个方法的参数(函数作为参数传递到方法中)。
  1. [菜鸟]Lambda 表达式
  2. 【Java8特性】Lambda表达式
  3. 【Java8特性】函数式接口Lambda表达式 的关系(1)
  4. 【Java8特性】函数式接口Lambda表达式 的关系(2)
  5. Lambda表达式秒用 —— SerializedLambda序列化 —— 获取模型字段名:Wrappers.<User>lambdaQuery().eq(User::getUserName, "张三")
  6. 常用Lambda表达式,让你的代码更优雅
4 方法引用:方法引用提供了非常有用的语法,可以直接引用已有Java类或对象(实例)的方法或构造器。与lambda联合使用,方法引用可以使语言的构造更紧凑简洁,减少冗余代码。方法引用使用一对冒号 ::
5 Optional 类:Optional 类已经成为 Java 8 类库的一部分,用来解决空指针异常。 [菜鸟]Optional类
6 Stream API:新添加的Stream API(java.util.stream) 把真正的函数式编程风格引入到Java中。
  1. 【Java8特性】Stream
  2. 《Java8实战》Stream流使用
  3. 【Stream流】操作示例(1)
  4. 【Stream流】操作示例(2)
  5. 使用Stream接口,List转Map,List去重、(多字段)排序、交集、差集、并集
  6. 使用stream流封装的【逻辑分页】工具类
7 Date Time API:加强对日期与时间的处理。 [菜鸟]新的日期时间 API
8 Base64:在Java 8中,Base64编码已经成为Java类库的标准。 [菜鸟]Base64
9 Nashorn, JavaScript 引擎:Java 8提供了一个新的Nashorn javascript引擎,它允许我们在JVM上运行特定的javascript应用。 [菜鸟]Nashorn, JavaScript 引擎
10 新工具:新的编译工具,如:Nashorn引擎 jjs、 类依赖分析器jdeps。  

 

Java入门教程 Java手册 深入理解Java集合框架 Java Decompiler(反编译器) 、 Java成长路线图《阿里巴巴 Java开发手册 

实战总结:VO,BO,PO,DO,DTO

 

  1. 7.8 W 字总结!Java 8—Java 10 特性详解
  2. 4.6 W 字总结!Java 11—Java 17特性详解
  3. 10 w+字总结!Java 8---Java 17 特性详解

Java基础

  1. 如何 编译 和 运行 单个 Java 文件?命令行: javac,java
  2. Java抽象类
  3. Java 注解详解 (annotation)
  • Input  ==》 Reader   读
  • Output ==》Writer   写
  1. 【Java IO详解】1. File 类
  2. 【Java IO详解】2. 流的分类
  3. 【Java IO详解】3. 字节 输入输出流(InputStream、OutputStream)
  4. 【Java IO详解】4. 字符 输入输出流(Reader、Writer)
  5. 【Java IO详解】5. 包装流(Buffered 缓存流

   (1) 缓冲流(BufferedInputStream、BufferedOutputStream、BufferedReader、BufferedWriter)
   (2) 转换流:把 字节流 转换为 字符流
        InputStreamReader:把字节输入流转换为字符输入流
        OutputStreamWriter:把字节输出流转换为字符输出流

  1. 【Java IO详解】6. 序列化与反序列化(对象流)
  2. (1)Java字符序列CharSequence,为什么不干脆定义String作为参数类型? 、(2)如何将CharSequence与String进行比较?

Class.forName() 入门教程 及 使用总结

  1. Java 关键字 static 的4种用法
  2. 普通的内部类(public class)和 静态内部类(public static class)区别?
  3. 访问 Java接口(interface)中的字段( 隐式转为 public final static 类型 )
  1. Java 动态接口,SPI 机制,Maven示例
  2. Java 关键字 this 的3种用法
  3. Java 关键字 final 的4种用法  、Java常量(final关键字)
  4. Java【常量】定义在interface中好,还是定义在class中好?
  5. Java序列化:Serializable、Externalizable、transient 浅析
  6. Java 关键字 transient 使用小记
  7. bytes = new Byte[1024]; 缓冲器的作用原理
  8. 关于读写数据出现部分“中文乱码”的问题记述 —— 换成“字符流”

  1. 开源项目中的 Java 异常处理示例
  2. 如何优雅的设计 Java异常(Throwable、Exception、RuntimeException、NullPointerException、IllegalArgumentException)?
  3. slf4j+log4j 如何获取调用栈信息(StackTrace)

  1. Java 泛型 详解
  2. JAVA泛型通配符 T,E,K,V 区别,T 以及 Class<T>,Class<?> 的区别
  3. Java 泛型 T、Class<T> 与 Class<?> 的区别
  4. Java泛型类的继承
  5. 【Java泛型】TypeReference获取泛型类型信息

  1. Java集合详解(Collection 和 Map)
  2. Java 遍历 Map
  3. 在增强性for循环ArrayList时,对元素进行删除,报错 java.util.ConcurrentModificationException: null 异常原因和解决方法
  4. Java ListArray 互转 及 java.util.List.toArray() 强制转换 注意事项
  5. Java有空列表/空集合/空字典:Collections.emptyList()、emptySet()、emptyMap(),但不推荐使用
  6. Java数据结构 —— Vector (向量类),和ArrayList功能类似

  1. Java集合(Collection)中有关 有序无序
  2. ArrayList 和 LinkedList 性能测试  (结论:用 ArrayList,且 for 循环)
  3. HashMap、LinkedHashMap、TreeMap 性能测试 (结论:用LinkedHashMap
  4. ArrayList与LinkedList区别与比较:

随机访问效率ArrayListLinkedList 在随机访问的时候效率要高,因为 LinkedList 是线性的数据存储方式,所以需要移动指针从前往后依次查找。
增加和删除效率在非首尾的增加和删除操作,LinkedList 要比 ArrayList 效率要高,因为 ArrayList 增删操作要影响数组内的其他数据的下标。
综合来说,在需要频繁读取集合中的元素时,更推荐使用 ArrayList,而在插入和删除操作较多时,更推荐使用 LinkedList。 


  1. Java List元素排序:多维度、多字段 排序
  2. Java Map元素 排序:HashMap、Hashtable、TreeMap、LinkedHashMap
  3. 【Java排序】 Map排序工具类(正序/倒序)
  4. 【Java排序】Comparator是怎么确定按“升序”排序还是“降序”排序的呢?
  5. Java Set元素 排序

  1. Java中关于this指向以及继承的问题?思考:父类方法如何返回子类对象实例?
  2. JavaJDBC(快速理解)
  3. Java 枚举(Enum) 详解7种常见的用法

  1. Java中的 时间日期类:Date(日期)、Calendar(日历)、DateFormat(日期格式)
  2. SimpleDateFormat类 时间日期格式汇总 & 中英文时间格式化转换,如Apr(四月)
  3. Java8新特性:LocalDate、LocalTime、LocalDateTime 使用场景+案例+常用工具类
  4. Java日期时间/时区示例:LocalDate、LocalTime、LocalDateTime、DateTimeFormatter、ZoneId、ZoneOffset、Instant 、Duration、Period、Date、timestamp、时间字符串
  5. Java8日期时间类:ZonedDateTime 和 LocalDateTime 的区别与转换
  6. Java8时间调节器:TemporalAdjuster详解,获得下一个星期日的日期、当月的最后一天(再也不用计算当月是28,29还是30天了)、下一年的第一天、下一个工作日等等

Java数组

  1. Java 中 Array 和 ArrayList 区别,Array与List相互转换
  2. Java 数组 ArrayList 并集、交集、差集、去重、反转

正则表达式

  1. Java 正则表达式 详解
  2. Java正则表达式,如何忽略大小写
  3. Java 正则表达式 appendReplacement() 和 appendTail() 的用法
  4. Java 正则表达式,后向引用($1, $2 ...)

数字计算

Java中的 取模(Math.floorMod()) 和 取余(%)

并发、异步编程

  1. Java并发编程
  2. 编程老司机带你玩转 CompletableFuture 异步编程
  3. 异步编程不会?我教你啊!CompletableFuture

Java多线程

Java定时器/定时任务

  1. 【Java定时器Timer】如何正确使用Timer?
  2. 【Java定时器Timer】避坑指南,Java中定时器Timer致命缺点,我差点就踩到了 —— 用完定时器后,要及时释放Timer,如:
timer.cancel();
timer.purge();

性能分析

  1. 推荐一个JVM分析工具
  2. 听闻阿里开源的Arthas在做Java应用诊断上特牛,果然

执行Shell脚本

  1. Java执行Shell脚本文件:ShellUtil.java

接口安全

  1. API接口防止参数篡改和重放攻击
  2. 接口签名鉴权,防止篡改、重放攻击
  3. Spring Boot接口如何设计防篡改、防重放攻击

Java性能调优

  1. Metrics教程1:JVM上的实时监控类库
  2. [V2EX]Java 有类似 PHP 的 xhprof 扩展或者是 Golang 的 pprof 包,可以用来分析、定位函数级别的耗时的工具吗?
  3. JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解

其他

  1. Java的业务操作结果类:Result<T>
  2. 面试官:Tomcat是如何处理Http请求的?
  3. xxl-job核心原理和时间轮算法的应用
  4. 何为幂等?如何设计?
  5. 领导:谁再用 Redis 实现过期订单关闭,立马滚蛋!