文章列表

共有 454 篇文章

详解Java的交互式编程环境:jshell

什么是交互式编程环境?重点词交互,在这样的编程环境中,你每输入一行代码,环境都会给你一个反馈,这就是交互式的编程环境。这种编程环境并不太适合工程化的复杂性需求,但在一些快速验证、简单计算之类的场景下还是非常好用的。其实交互式编程环境在其他高级语言中很早就有了,而Java直到Java 9才正式推出了这样的工具。 下面就来一起学习下,这个Java中的交互式编程环境JShell。 JShell快速入门...

Java 16 新特性:record类

以前我们定义类都是用class关键词,但从Java 16开始,我们将多一个关键词record,它也可以用来定义类。record关键词的引入,主要是为了提供一种更为简洁、紧凑的final类的定义方式。 下面就来具体了解record类的细节。 声明record类 声明record类的基础语法: java record rangeint start, int end{}...

一个神器的项目:让 Python 在 HTML 中运行

大家好,我是DD,已经是封闭在家的第51天了! 最近一直在更新Java新特性(https://www.didispace.com/java-features/)和IDEA Tips(https://www.didispace.com/idea-tips/)两个原创专栏,其他方向内容的动态关注少了。昨天天晚上刷推的时候,瞄到了这个神奇的东西,觉得挺cool的,拿出来分享下:...

Java 15 新特性:隐藏类

隐藏类,是一种不能被其他类直接使用的类。引入隐藏类的主要目的是给框架来使用,使得框架可以在运行时生成类,并通过反射间接使用它们。可能有点抽象,不要紧,下面我们通过一个例子来直观的认识它! 隐藏类案例 第一步:先创建一个普通的Java类 java public class JEP371HiddenClasses { public static String hello { return...

Java 14 新特性:switch表达式增强

面对这样的if语句,你是不是很难受呢? java if flag == 1 { log.info"didispace.com: 1"; } else if flag == 2 { log.info"didispace.com: 2"; } else if flag == 3 { log.info"didispace.com: 3"; } else if flag == 4 {...

Java 17 新特性:switch的模式匹配(Preview)

还记得Java 16中的instanceof增强http://www.didispace.com/java-features/java16/jep394-pattern-matching-for-instanceof.html吗? 通过下面这个例子再回忆一下: java Map data = new HashMap<>; data.put"key1", "aaa";...

Java 17 新特性:密封类

Java 17推出的新特性Sealed Classes经历了2个Preview版本(JDK 15中的JEP 360、JDK 16中的JEP 397),最终定稿于JDK 17中的JEP 409。Sealed Classes有两种主流翻译:密封类、封闭类。个人喜欢前者多一些,所以在本文中都称为密封类。其实Sealed Classes的其他许多语言中并不是什么新鲜事物,C、Scala等高级语言中都有类似...

Java 16 新特性:instanceof增强

instanceof这个关键词,主要用来判断某个对象是不是某个类的实例。 比如,有时候我们要处理一个类似这样的数据集: java Map data = new HashMap<>; data.put"key1", "aaa"; data.put"key2", 111; 这个Map中的Value值因为可能是不同的对象,所以定义的是Object。这个时候,当我们get出来的时候,就需要去判断和转换之后...

Java 15 新特性:文本块

假设有这样一个场景,我们需要做一个工具。用来自动生成项目文档,文档可以通过浏览器查看,所以最后产出物肯定是一堆html文件。为了让这些html文件更容易读,良好的格式肯定要保持,该换行的换行、该缩进的缩进。 那么,在组织最后内容的时候,你可能就会这样子来写: java String html = "\n" + "\n"+ " Java 15 新特性:文本块 | 程序猿DD\n"+ "...

IDEA新建项目时的默认配置与模版配置

今天一大早,群里(点击加群https://blog.didispace.com/join-group-spring/index.html)有小伙伴问了这样的一个问题: !https://www.didispace.com/img/idea-tips/project-default-config/project-default-config-1.png...

21 页, 共 46 页, 总计 454 篇文章