专栏名称: 码小辫
给程序员和编程爱好者分享计算机编程电子书以及相关的学习资源
目录
相关文章推荐
老子道德经  ·  这辈子你会遇见谁,早已命中注定! ·  昨天  
茅台时空  ·  与传统文化同出海 茅台再会新加坡 ·  昨天  
古典文献学微刊  ·  新书 | 《学服斋笔记》整理出版 ·  2 天前  
古典文献学微刊  ·  新书 | 黄永年《北朝隋唐史论集》出版 ·  4 天前  
51好读  ›  专栏  ›  码小辫

JAVA新提案:努力简化Hello World写法

码小辫  · 公众号  ·  · 2023-04-21 17:10

正文

码小辫
专注更多编程视频和电子书
天天在用钱

出品 | OSC开源社区(ID:oschina2013)

OpenJDK 的 JEP 445 提案正在努力简化 Java 的入门难度。这个提案主要是引入 “灵活的 Main 方法和匿名 Main 类” ,希望 Java 的学习过程能更平滑,让学生和初学者能更好地接受 Java 。
提案的作者 Ron Pressler 解释:现在的 Java 语言非常适合开发和维护大型复杂应用程序,但学校在教编程时往往会从变量、函数和子程序等基本的小型编程概念开始,在这个阶段,往往不需要类、包和模块的大型编程概念。但现在的 Java 对初学者不太友好 ,比如经典的 Hello, World! 入门程序 :
    public static void main(String[] args)
        System.out.println("Hello, World!");
    }
}
Ron 认为,作为新手入门的第一个程序,这段代码太复杂了。比如 class 声明和强制性的 public 访问修饰符是大型编程结构,它们在封装具有定义良好的外部组件接口的代码单元时很有用,但在这个入门小示例中毫无意义。String [] args 参数用于将代码与外部组件连接起来,但在这段代码里面不会被使用。static 修饰符是 Java 类和对象模型的一部分,但在新手村出现也为时尚早。
作为优化,该提案首先增强了启动 Java 程序的协议灵活性:
  • 允许已启动类的 main 方法具有 public 、 protected 或默认(即包)访问权限。

  • 如果启动的类不包含带 String [] 参数的 static main 方法,但包含不带参数的 static main 方法,则调用该方法。

  • 如果启动的类没有 static main 方法,但有一个非 private 零参数构造函数(即 public 、 protected 或包访问)和一个非 private 实例 main 方法,然后构造该类的一个实例。如果该类有一个带 String [] 参数的实例 main 方法,则调用该方法;否则,不带参数调用实例 main 方法。

如此一来便允许省略 main 方法的 String[] 参数,并允许 main 方法既不是 public 也不是 static 。可以稍微简化 Hello, World! :
void main()
此外,还要引入 匿名 Main 类






请到「今天看啥」查看全文