From f6974bf4a4d4988ce97dc7c5fe24211d08a4c6d4 Mon Sep 17 00:00:00 2001 From: wangxiang <276644985haidnor@gmail.com> Date: Fri, 25 Aug 2023 09:25:55 +0800 Subject: [PATCH] update README.md --- README.md | 20 ++++++++++---------- src/main/java/haidnor/jvm/Main.java | 11 ++++++----- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 8ce2a26..eea33ee 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,10 @@ +██╗ ██╗ █████╗ ██╗██████╗ ███╗ ██╗ ██████╗ ██████╗ ██╗██╗ ██╗███╗ ███╗ +██║ ██║██╔══██╗██║██╔══██╗████╗ ██║██╔═══██╗██╔══██╗ ██║██║ ██║████╗ ████║ +███████║███████║██║██║ ██║██╔██╗ ██║██║ ██║██████╔╝ ██║██║ ██║██╔████╔██║ +██╔══██║██╔══██║██║██║ ██║██║╚██╗██║██║ ██║██╔══██╗ ██ ██║╚██╗ ██╔╝██║╚██╔╝██║ +██║ ██║██║ ██║██║██████╔╝██║ ╚████║╚██████╔╝██║ ██║ ╚█████╔╝ ╚████╔╝ ██║ ╚═╝ ██║ +╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═════╝ ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚════╝ ╚═══╝ ╚═╝ ╚═╝ + # haidnorJVM 使用 Java17 编写的 Java 虚拟机 @@ -28,9 +35,9 @@ * 支持 JDK 中自带的 Java 类 * 支持反射 * 支持异常 -* 枚举 (开发中...) -* switch 语法 (开发中...) -* lambda 表达式 (开发中...) +* 枚举 (TODD...) +* switch 语法 (TODD...) +* lambda 表达式 (TODD...) # 局限性 * 不支持多线程 @@ -193,13 +200,6 @@ java.lang.reflect.InaccessibleObjectException: Unable to make public boolean jav **解决方法:** 启动 haidnorJVM 时添加 JVM 参数 `--add-opens java.base/java.util=ALL-UNNAMED` 绕过访问性限制 -# 后续计划 -1. 实现支持枚举、switch 语法、lambda 表达式 -2. 编写更多的单元测试代码, 对每一个已实现的功能做完善的单元测试 -3. 完善注释。(这一个学习项目,我希望尽可能的能让人快速理解原理。也计划写一些相关的博客或教程) -4. 优化代码,减少冗余、提高可读性 -5. 解决 BUG,目前 BUG 主要集中在运行 JDK 自带的类实现上 - # 联系作者 如果您也有兴趣,我们可以一起完善这个项目!欢迎! 😀 diff --git a/src/main/java/haidnor/jvm/Main.java b/src/main/java/haidnor/jvm/Main.java index c3489b2..cff1a2c 100644 --- a/src/main/java/haidnor/jvm/Main.java +++ b/src/main/java/haidnor/jvm/Main.java @@ -24,11 +24,12 @@ public class Main { @SneakyThrows public static void main(String[] args) { String banner = """ - ░░ ░░ ░░░░░ ░░ ░░░░░░ ░░░ ░░ ░░░░░░ ░░░░░░ ░░ ░░ ░░ ░░░ ░░░\s - ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒▒▒ ▒▒▒▒\s - ▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒▒▒▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒▒▒ ▒▒\s - ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓ ▓▓\s - ██ ██ ██ ██ ██ ██████ ██ ████ ██████ ██ ██ █████ ████ ██ ██\s + ██╗ ██╗ █████╗ ██╗██████╗ ███╗ ██╗ ██████╗ ██████╗ ██╗██╗ ██╗███╗ ███╗ + ██║ ██║██╔══██╗██║██╔══██╗████╗ ██║██╔═══██╗██╔══██╗ ██║██║ ██║████╗ ████║ + ███████║███████║██║██║ ██║██╔██╗ ██║██║ ██║██████╔╝ ██║██║ ██║██╔████╔██║ + ██╔══██║██╔══██║██║██║ ██║██║╚██╗██║██║ ██║██╔══██╗ ██ ██║╚██╗ ██╔╝██║╚██╔╝██║ + ██║ ██║██║ ██║██║██████╔╝██║ ╚████║╚██████╔╝██║ ██║ ╚█████╔╝ ╚████╔╝ ██║ ╚═╝ ██║ + ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═════╝ ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚════╝ ╚═══╝ ╚═╝ ╚═╝ """; System.out.println(banner);