Java 7: 全面教程-1.1 第一个Java程序
1.1第一个Java程序
这个小节主要介绍的是关于Java 开发的主要步骤:写代码,转换成字节码,和运行字节码。
1.1.1写一个Java 程序
你可以使用任何文本编辑器来写Java程序。 打开一个文本编辑器然后写入Listing 1.1 中的代码。另外,如果你已经下载了这本书的例子程序,那么直接复制到文本编辑器即可。
Listing 1.1: A simple Java program
class MyFirstJava{
Public static void main(String[] args) {
System.out.println(“Java rocks.”);
}
}
现在,你暂时只要知道Java代码必须存在于某个类中就足够了。然后,确认你的代码保存在MyFirstJava.java文件中。Java的所有源文件都必须用java扩展名。
1.1.2编译Java程序
你可以使用在JDK安装路径中的bin 文件夹里的javac 程序来编译Java 程序。假设你已经编辑了你的电脑中的PATH 环境变量(如果还没,请参照介绍章节中的“下载和安装Java”小节),你应该可以在任何路径调用javac。按照以下做法来编译Listing 1.1 的MyFirstJava类:
1. 打开命令窗口提示符然后把路径设置成为你保存MyFirstProgram.java 文件的目录。
2. 输入以下命令:
javac MyFirstJava.java
如果一切顺利,javac会在当前目录下生成一个名为MyFirstJava.class 的文件。
注意
Javac工具还有很多有特色的,包含了很多选项的命令。例如,你可以告诉它你想在哪个路径生成类文件。附录A,“javac”有关于javac的详细介绍。
1.1.3运行Java程序
使用JDK中的java程序来运行你的Java程序。再次提下,如果已经添加了PATH环境变量,你可以在任何路径下使用java。在当前目录下,输入以下命令然后按回车键。
java MyFirstJava
值得注意的是当你运行Java程序的时候无需加入class扩展名。你现在应该在你的控制台看到如下句子:
Java rocks.
恭喜你。你已经成功完成了你的第一个Java 程序。由于本章节的目标是让你熟悉书写代码和编译过程,我就不在这解释程序是如何运作的。
你还可以传递参数给Java 程序。例如,如果你有一个类名为Calculator,然后你想传两个参数给它,你就照这样做:
Java Calculator arg-1 arg-2
这里,arg-1是第一个参数,arg-2是第二个参数。你需要传递多少个参数就传递多少个。Java程序将会把这些参数变量存入字符串array中。你将在第五章节的“Core Classes”小节学习如何应用参数。
注意
Java工具是一个高级程序,它可以通过传递选项来配置。比如,你可以为它设置可分配的内存量。附录 B,“java”给出了这些选项的解释。
注意
Java工具可以用来运行已经打包成jar文件的Java类。查看附录C,“Setting an Application’s Entry Point”小节中的“jar”。
你真的了解一段Java程序的生命史吗? Java语言的编译期其实是一段“不确定 ”的过程,因为可能是一个前端编译器把.java文件转变为.class文件的过程;也可能是指JVM的后端运行期编译器(JIT编译器)把字节码转变为机器码的过程;还可能是指使用静态提前编译器(AOT编译器)直接把.java文件编译成本地机器码的过程。但是在这里我们说的是第一类。也是符合我们大众对编译认知的。编译在这个时间段经历了哪些过程呢?
ali清英 方腾飞,花名清英,英文名kiral,并发编程网创始人,支付宝技术专家,《Java并发编程的艺术》作者。
相关文章
- Java 正则表达式简明教程
- JAVA 注解教程(五)注解的提取
- JAVA 注解教程(四)Java 预置的注解
- Java实现 蓝桥杯 算法提高 小X的购物计划
- java实现第五届蓝桥杯排列序数
- Java实现最大流量问题
- Java视频教程从入门到精通,Java教程视频全套完整版!
- java 11 标准Java异步HTTP客户端
- Java - Junit单元测试框架
- Java 网络IO编程总结(BIO、NIO、AIO均含完整实例代码)
- 编写高质量代码:改善Java程序的151个建议 --[52~64]
- 【JAVA】MacBook安装Java环境及eclipse
- maven配置jib-maven-plugin插件构建java应用docker镜像
- Java线程池--Executors.newScheduledThreadPool()使用示例
- paip.myeclipse7 java webservice 最佳实践o228
- 华为OD机试 - 等和子数组最小和(Java & JS & Python)
- 当年的java考试:Java景区预约登记管理系统(maven整合servlet)
- 【Java用法】java 8两个List集合取交集、并集、差集、去重并集
- 《Kotin 极简教程》第10章 Kotlin与Java互操作
- Java程序猿从笨鸟到菜鸟之(九十二)深入java虚拟机(一)——java虚拟机底层结构具体解释
- JAVA学习第十九课(java程序的异常处理 (二))
- 【java】Java 内存模型
- pytorch移动端教程 Java调用libtorch