JDK15JAVA15的新特性展望伴随着2020的寒冬和新冠病毒的肆虐,JAVA迎来了久未已久的JAVA14。自从2017年JAVA9发布之后,JAVA的发布版本跟上了敏捷开发的步伐,小步快跑,Java平台发布节奏已从每3年以上的主要版本转变为每6个月发布一次功能。现在,每年的3月和9月都会发布新的版本功能。三月已过,九月还远吗?在JAVA14中,推出了swith的最终版本,并且支持了NVM。今天
分类:
编程语言 时间:
2020-11-27 11:06:26
阅读次数:
10
cratedb 4.2 已经发布了,从changelogs 可以看到还是有比较多的更新的,比如pg 协议更好的兼容(更好的支持bi以及数据分析工具) 同时提供了更好的pg内部结构的暴露(还是方便数据分析工具的使用),同时替换nashorn 为graalvm 的js 引擎(更好的js 特性支持) 同时 ...
分类:
数据库 时间:
2020-08-29 15:12:58
阅读次数:
67
https://www.newsmth.net/nForum/#!article/WorkLife/2325222 package com.example.annotationdemo.retention; /** * 源码有 */ @SourceAnnotation public class A1 ...
分类:
其他好文 时间:
2020-07-11 17:35:53
阅读次数:
100
Java语言不断更新迭代,作为高级编译中的常青树,以一次编译,到处运行的特点广为流传,所以话不多说直接来看! 前言 宝刀未老的Java 1995年Sun公司推出的Java语言,从第一个版本诞生到现在已经有二十多年的了。时间若白驹过隙,转瞬即逝。二十多年来IT技术更新换代,编程语言层出不穷。就像自然界 ...
分类:
编程语言 时间:
2020-01-19 23:45:51
阅读次数:
172
使用线程更好的提高资源利用率,但也会带来上下文切换的消耗,频繁的内核态和用户态的切换消耗,如果代码设计不好,可能弊大于利。 一、线程 进程是分配资源的最小单位,线程是程序执行的最小单位;线程是依附于进程的,一个进程可以生成多个线程,这些线程拥有共享的进程资源; 二、线程生命周期(相关API)1、5个 ...
分类:
编程语言 时间:
2019-12-16 13:27:45
阅读次数:
112
在我写自动化脚本的时候经验药真实发送验证码才能往下进行UI自动化 思路:验证码会显示在哪些地方,手机短信?数据库存储?日志? 完整代码如下: package guanyu.tools;import com.jcraft.jsch.*;//import jdk.nashorn.tools.Shell; ...
分类:
编程语言 时间:
2019-12-03 10:27:07
阅读次数:
94
目录
Java8 Stream API 的不友好性
借助 IntelliJ IDEA 来优化一下
2.1 新建 Stream Live Templates
2.2 顺手把其他常用的模板设置一下
Java8 Stream API 的不友好性
Java8 自 2014 年 3 月发布以来,已经过去很多个年头了。在公司内部也已逐渐将所有的生产代码迁移到这个版本。迁移中主要所做的工作就是将代码库更新为 lambda 表达式,Stream 流和新的日期 API。另外还使用 Nashorn 动态编写那些可能在运行时需要被更改的功能。
除了 lambda 表达式外,最常用的一个功能就是新的 Stream API 了,它可以被用来很方便地操作集合。此外,Stream 还可以很大的提高集合操作相关代码的可读性。
但是,关于 Stream 流, 有一件事真的让我很困扰!
在使用 Stream 流时,类似reduce和findFirst这样的终端操作,语义都是简单明了,也很直接,我们无需再额外传参。
而另一类我们使用比较多的终端操作:collect用起来就很繁琐了,如我们要转换成List
分类:
编程语言 时间:
2019-11-21 20:07:30
阅读次数:
96
接口隔离原则(InterfaceSegregationPrinciple,ISP)是指用多个专门的接口,而不使用单一的总接口,客户端不应该依赖它不需要的接口。这个原则指导我们在设计接口时应当注意一下几点:1、一个类对一类的依赖应该建立在最小的接口之上。2、建立单一接口,不要建立庞大臃肿的接口。3、尽 ...
分类:
其他好文 时间:
2019-08-11 15:18:10
阅读次数:
97
jdk 内嵌的引擎有 bug,那个叫 nashorn 的东西,在群里问了大佬,说是jdk小版本的问题,我本地是1.8.0_25的,同事的是1.8.0_144,换成新版本的就可以了。 ...
分类:
编程语言 时间:
2019-02-13 15:41:55
阅读次数:
191
移除的一些其他内容 移除项 移除了com.sun.awt.AWTUtilities 移除了sun.misc.Unsafe.defineClass, 使用java.lang.invoke.MethodHandles.Lookup.defineClass来替代 移除了Thread.destroy()以及 ...
分类:
编程语言 时间:
2019-02-03 23:45:52
阅读次数:
242