【java9】java9新特性之改进JavaDocs

Java9在JavaDocs方面的主要新特性是,其输出现在符合兼容HTML5标准。在之前的版本中,默认的HTML版本是 HTML4.01,但在Java9及之后的版本中,JavaDocs命令行工具将默认使用HTML5作为输出标记语言。这意味着,使用JavaDocs工具生成的文档将具有更现代、更丰富的样式和功能,同时保持与现有HTML5浏览器的兼容性。

此外,JavaDocs的输出结构也保持不变,仍然由三个框架组成的结构构成,即使是以HTML5输出的Java帮助文档也保持相同的结构。这意味着,尽管在底层技术上有所更新,但生成的文档对于用户来说仍然是非常熟悉和直观的。

总的来说,Java9在JavaDocs方面的改进使得生成的文档更加现代化和兼容,同时也保持了用户的体验一致性。这些改进有助于提高文档的可读性和可用性,使得开发人员更容易理解和使用Java API。

java8生成的html4文档

例如有下面一个简单测试类:

package com.morris.java9;/*** <p>This is a test doc class.</p>** @author morris131* @version 1.0.0*/
public class DocDemo {/*** <p> get the age of user by the name of user.</p>** @param name the name of user* @return the age of user*/public int getAgeByName(String name) {return 18;}
}

然后我们就可以使用javadoc命令输出该类的文档:

$ javadoc -d src/main/resources/java8-doc-html4 src/main/java/com/morris/java
9/DocDemo.java
Loading source file src/main/java/com/morris/java9/DocDemo.java...
Constructing Javadoc information...
Creating destination directory: "src/main/resources/java8-doc-html4/"
Standard Doclet version 1.8.0_401
Building tree for all the packages and classes...
Generating src/main/resources/java8-doc-html4/com/morris/java9/DocDemo.html...
Generating src/main/resources/java8-doc-html4/com/morris/java9/package-frame.html...
Generating src/main/resources/java8-doc-html4/com/morris/java9/package-summary.html...
Generating src/main/resources/java8-doc-html4/com/morris/java9/package-tree.html...
Generating src/main/resources/java8-doc-html4/constant-values.html...
Building index for all the packages and classes...
Generating src/main/resources/java8-doc-html4/overview-tree.html...
Generating src/main/resources/java8-doc-html4/index-all.html...
Generating src/main/resources/java8-doc-html4/deprecated-list.html...
Building index for all classes...
Generating src/main/resources/java8-doc-html4/allclasses-frame.html...
Generating src/main/resources/java8-doc-html4/allclasses-noframe.html...
Generating src/main/resources/java8-doc-html4/index.html...
Generating src/main/resources/java8-doc-html4/help-doc.html...

打开index.html的源码,就可以看到HTML4.01的文档声明了:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

可以看到javadoc默认使用的是HTML4.0.1版本。

java9生成html4文档

还是上面的测试类,使用java9来生成生成html4文档:

$ javadoc -d src/main/resources/java9-doc-html4 src/main/java/com/morris/java9/DocDemo.java
Loading source file src/main/java/com/morris/java9/DocDemo.java...
Constructing Javadoc information...
Standard Doclet version 9.0.4
Building tree for all the packages and classes...
Generating src/main/resources/java9-doc-html4/com/morris/java9/DocDemo.html...
Generating src/main/resources/java9-doc-html4/com/morris/java9/package-frame.html...
Generating src/main/resources/java9-doc-html4/com/morris/java9/package-summary.html...
Generating src/main/resources/java9-doc-html4/com/morris/java9/package-tree.html...
Generating src/main/resources/java9-doc-html4/constant-values.html...
Building index for all the packages and classes...
Generating src/main/resources/java9-doc-html4/overview-tree.html...
Generating src/main/resources/java9-doc-html4/index-all.html...
Generating src/main/resources/java9-doc-html4/deprecated-list.html...
Building index for all classes...
Generating src/main/resources/java9-doc-html4/allclasses-frame.html...
Generating src/main/resources/java9-doc-html4/allclasses-frame.html...
Generating src/main/resources/java9-doc-html4/allclasses-noframe.html...
Generating src/main/resources/java9-doc-html4/allclasses-noframe.html...
Generating src/main/resources/java9-doc-html4/index.html...
Generating src/main/resources/java9-doc-html4/help-doc.html...

打开index.html的源码,就可以看到HTML4.01的文档声明了:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
... ...

可以看到javadoc默认使用的是HTML4.0.1版本。

java9生成html5文档

还是上面的测试类,使用-html5选项指定输出结果为HTML 5:

$ javadoc -html5 -d src/main/resources/java9-doc-html5 src/main/java/com/morris/java9/DocDemo.java
Loading source file src/main/java/com/morris/java9/DocDemo.java...
Constructing Javadoc information...
Standard Doclet version 9.0.4
Building tree for all the packages and classes...
Generating src/main/resources/java9-doc-html5/com/morris/java9/DocDemo.html...
Generating src/main/resources/java9-doc-html5/com/morris/java9/package-frame.html...
Generating src/main/resources/java9-doc-html5/com/morris/java9/package-summary.html...
Generating src/main/resources/java9-doc-html5/com/morris/java9/package-tree.html...
Generating src/main/resources/java9-doc-html5/constant-values.html...
Building index for all the packages and classes...
Generating src/main/resources/java9-doc-html5/overview-tree.html...
Generating src/main/resources/java9-doc-html5/index-all.html...
Generating src/main/resources/java9-doc-html5/deprecated-list.html...
Building index for all classes...
Generating src/main/resources/java9-doc-html5/allclasses-frame.html...
Generating src/main/resources/java9-doc-html5/allclasses-frame.html...
Generating src/main/resources/java9-doc-html5/allclasses-noframe.html...
Generating src/main/resources/java9-doc-html5/allclasses-noframe.html...
Generating src/main/resources/java9-doc-html5/index.html...
Generating src/main/resources/java9-doc-html5/help-doc.html...

查看index.html页面的源码,就会发现已经使用了HTML 5文档类型声明了:

<!DOCTYPE HTML>
... ...


可以看到java9在生成的文档右上角加上了搜索功能,如果一个类中有多个方法有个搜索功能就很方便了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3029978.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

MemoryModule - exp - test

文章目录 MemoryModule - exp - test概述笔记测试环境GetModuleFileName不能正常执行GetModuleFileNameWntdll_LdrGetDllFullName猜测原因用LoadLibrary载入的DLL中功能是正常的 gLog可以正常使用内存载入DLL无法支持的功能的折中方法COM操作正常调用方代码接口代码 接口入参测…

Visual Studio的使用方法

目录 1. 下载软件 2. 软件安装 3. 软件使用 4. VS工具的字体背景美化 5. 程序调试 1. 下载软件 官网地址&#xff1a;Visual Studio 2022 IDE - 适用于软件开发人员的编程工具 (microsoft.com) 2. 软件安装 1.选中vs_Professional&#xff0c;鼠标右击选择“以管理员身份…

Capl复合数据类型:结构

结构是由一系列的相同或不同的数据类型构成的整体。结构中的每一项数据成为一个成员。每个成员可以有各自的数据类型。所有成员一起表示一个整体结构。 1.定义结构体类型 运行结果 2.修改结构体变量的成员。自定义一个常量给结构体变量的成员重新赋值即可。 3.定义一个结构体类…

【平时工作中的各种术语__持续更新~~~~】

中文&#xff1a; 1、jar包 JAR包&#xff08;Java Archive Package&#xff09;是一种将多个Java类文件以及与它们相关的元数据和资源&#xff08;如文本、图片等&#xff09;打包到一个单一文件中的归档工具。它基于ZIP文件格式。JAR文件主要用于分发和部署Java应用程序。J…

java期末复习

java jdk jre jvm .java-------->.class----jvm---->机器语言 编写源文件 编译源文件生成字节码 加载运行字节码 java语句执行顺序 顺序 选择 循环 异常处理 基本语法 方法格式 权限修饰符 返回值声明 方法名称(参数列表){方法中封装的逻辑功能;return 返回值;}–权…

Mybatis-Plus常用的增删改查坑

添加依赖 <!--实体类上加上Data注解就不用写get&#xff0c;set&#xff0c;toString&#xff0c;equals等方法了--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional…

Xshell连接提示“SSH服务器拒绝了密码”

原因1&#xff1a;数字锁没有打开 没有打开NumLock&#xff08;数字小键盘上面有一个【Num】按键&#xff09;&#xff0c;需要按键开启。 注意要检查NumLock灯是否亮起。 或者改成用字母键上面的数字键输入就好了。 原因2&#xff1a;root密码设置错误&#xff08;这个是比较常…

linux上安装Jmeter环境

以前都是在Windows本机上使用界面版Jmeter&#xff0c;今天试一下安装到linux上在linux中使用&#xff0c;Jmeter的使用需要先安装jdk环境然后再配置jmeter。 1.配置环境 linux环境&#xff1a;Centos 8.2 64位 JDK版本&#xff1a;jdk-8u221-linux-x64.tar.gz &#xff08;…

Python尝试安装 pyaudio 时遇到的错误信息表示安装过程失败,原因是找不到 Python.h 头文件

环境&#xff1a; Python 3.8.10 WSL2 问题描述&#xff1a; 尝试安装 pyaudio 时遇到的错误信息表示安装过程失败&#xff0c;原因是找不到 Python.h 头文件 error: subprocess-exited-with-error Building wheel for pyaudio (pyproject.toml) did not run successfully…

一篇详解Git版本控制工具

华子目录 版本控制集中化版本控制分布式版本控制 Git简史Git工作机制Git和代码托管中心局域网互联网 Git安装基础配置git的--local&#xff0c;--global&#xff0c;--system的区别 创建仓库方式1git init方式2git clone git网址 工作区&#xff0c;暂存区&#xff0c;本地仓库…

程序找茬:统计字符个数问题

【题目描述】 下面的程序意图在于统计字符串中字符1的个数&#xff0c;可惜有瑕疵&#xff1a; #include<stdio.h> #define maxn 10000000 10 int main() {char s[maxn];scanf("%s", s);int tot 0;for(int i 0; i < strlen(s); i)if(s[i] 1) tot;prin…

67万英语单词学习词典ACCESS\EXCEL数据库

这似乎是最多记录的英语单词学习词典&#xff0c;包含复数、过去分词等形式的单词。是一个针对想考级的人员辅助背单词学英语必备的数据&#xff0c;具体请自行查阅以下的相关截图。 有了数据才能想方设法做好产品&#xff0c;结合权威的记忆理论&#xff0c;充分调动用户的眼…

智慧公厕解决什么问题?实现了什么样的价值?

公共厕所一直是城市管理的难题&#xff0c;常常面临着卫生条件不佳、管理不善以及使用体验差等问题。为了解决这些困扰城市的难题&#xff0c;智慧公厕应运而生。智慧公厕不仅应用了信息化和数字化技术&#xff0c;还通过全方位的智能化应用&#xff0c;彻底改变了传统公厕的面…

(九)JSP教程——pageContext对象

pageContext对象是由JSP容器创建并初始化的&#xff0c;相当于当前页面的容器&#xff0c;它可以访问当前页面中的所有对象。它的主要作用是为JSP页面包装上下文&#xff0c;并用于管理属于JSP的特殊可见部分中已命名对象的访问。 一般情况下&#xff0c;使用该对象的应用并不多…

AScript纯本地离线文字识别插件

目的 AScript是一款可以模拟鼠标和键盘操作的自动化工具。它可以帮助用户自动完成一些重复的、繁琐的任务&#xff0c;节省大量人工操作的时间。但按键精灵是不包含图色功能&#xff0c;无法识别屏幕上的图像&#xff0c;根据图像的变化自动执行相应的操作。本篇文章主要讲解下…

java对象互换工具类

1:将Object类型转成json字符串 /*** 将对象转为字符串* param obj* return*/public static String toString(Object obj) {if(obj null) {return null;}if ("".equals(obj.toString())) {return null;}if (obj instanceof String) {return obj.toString();}try {Ob…

QT--5

1> 将网络聊天室重新实现一遍 服务器端 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);ser new QTcpServer(this); }Widget::~Widget() {delete ui; }vo…

### 【数据结构】线性表--顺序表(二)

文章目录 1、什么是线性表2、线性表的基本操作3、顺序表3.1、顺序表的定义3.2、顺序表的实现方式&#xff1a;静态分配3.3、顺序表的实现方式&#xff1a;动态分配3.4、顺序表的特点3.5、顺序表的初始化与插入操作3.6、顺序表的删除与查询 1、什么是线性表 ​ 线性表是具有相同…

Selenium web 网页测试自动化需要哪些技术?

引言&#xff1a; 在当今互联网时代&#xff0c;网页测试自动化成为了确保软件质量和提高效率的重要手段之一。Selenium是一种功能强大且广泛应用的工具&#xff0c;可用于实现网页测试自动化。本文将带您了解Selenium Web网页测试自动化所需的技术和步骤&#xff0c;以便您从…

生成式AI+跨境电商有哪些新玩法?店匠科技与亚马逊云科技已经在路上

导读 跨境电商一直是生成式AI最热门的应用领域之一。 生成式AI在跨境电商行业的核心应用场景有哪些&#xff1f;AI跨境电商又有哪些新玩法&#xff1f; 根据海关数据&#xff0c;2023年我国跨境电商进出口总额达2.38万亿元&#xff0c;增长15.6%。我国跨境电商主体已超10万家…