其他
砖家建议:努力降低 Java 入门难度?!
提案的作者 Ron Pressler 解释:现在的 Java 语言非常适合开发和维护大型复杂应用程序,但学校在教编程时往往会从变量、函数和子程序等基本的小型编程概念开始,在这个阶段,往往不需要类、包和模块的大型编程概念。但现在的 Java 对初学者不太友好,比如经典的 Hello, World! 入门程序 :
System.out.println("Hello, World!");
}
}
class
声明和强制性的 public
访问修饰符是大型编程结构,它们在封装具有定义良好的外部组件接口的代码单元时很有用,但在这个入门小示例中毫无意义。String [] args 参数用于将代码与外部组件连接起来,但在这段代码里面不会被使用。static 修饰符是 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! :class
:javac --release 21 --enable-preview Main.java
编译程序,用 java --enable-preview Main
运行;或者使用源代码启动器时,使用 java --source 21 --enable-preview Main.java
运行程序。提案目标
为 Java 提供平滑的入口,方便教育工作者可以循序渐进地介绍编程的概念。
帮助学生以简洁的方式编写基本入门程序,并随着其 Java 技能增长,优雅地扩展代码。
减少编写简单程序(例如脚本和命令行实用程序)的仪式。
不要单独介绍 Java 的初学者方言。
不引入单独的初学者工具链;编译和运行学生的程序,使用的工具应该和生产环境的 Java 程序相同。
原文链接:https://www.oschina.net/news/236836/jep-445
原文编辑:罗奇奇出品 | OSC开源社区(ID:oschina2013)
欢迎学编程的朋友们加入鱼皮的 编程知识星球 ,鱼皮会 1 对 1 解决你的问题,直播带你做出项目、为你定制学习计划和求职指导,还能获取海量编程学习资源,和上万名学编程的同学共享知识、交流进步。一起加油!
往期推荐