day02

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

在开发第一个Java程序之前我们必须对计算机的一些基础知识进行了解。

常用DOS命令

Java语言的初学者学习一些DOS命令会非常有帮助。DOS是一个早期的操作系统现在已经被Windows系统取代对于我们开发人员目前需要在DOS中完成一些事情因此就需要掌握一些必要的命令。例如在输入DOS命令可以创建文件夹如下图所示

如何进入DOS操作窗口 

按下Windows+R键盘打开运行窗口输入cmd回车进入到DOS的操作窗口。

下面是键盘常用键位图

常用命令如下图所示

路径在windows系统上包括相对路径和绝对路径。

  • 相对路径相对路径一定是相对于当前所在“位置”而言的。相对路径是相对于当前而言从当前所在的位置作为起点。
  • 绝对路径在windows操作系统中凡是路径起点是盘符的都是绝对路径

Java 的加载与执行

在编写第一个 Java 程序之前我们应当对 Java 的加载与执行提前有一个简单的了解请看下图

通过上图我们可以看到 Java 程序从开发到最终运行是这样进行的

  • 第一步写代码在任意位置创建一个.java 结尾的文件程序员在该文件中编写符合 Java语法的源代码这个文件被称为Java 源文件。
  • 第二步编译使用“javac”命令对 java 源文件进行编译如果 Java 源文件符合 Java语法规则则编译生成 1 个或者多个以“.class”结尾的文件。“.class”结尾的文件我们称之为字节码文件注意字节码文件不是普通文本文件使用记事本等文本编辑器是无法打开的但该文件内容也不是二进制如果是二进制形式的话操作系统是可以直接执行的这个文件的内容我们称之为字节码。注意这里有一个“类名”的概念假设生成的文件是 A.class则表示类名为 AB.class 则表示类名为 B。
  • 第三步运行使用“java”命令运行已编译的 Java 程序假设编译之后的字节码文件是 A.class则在 dos 命令窗口中执行 java A命令这个时候 Java 虚拟机JVM就启动了Java 虚拟机通过“类装载器 ClassLoader”从硬盘中找到 A.class 文件并装载字节码文件被装 载到 Java 虚拟机之后Java 虚拟机解释器对字节码进行解释最终解释为二进制码然后操 作系统通过执行二进制指令来和硬件平台完成交互。 

以上则是 Java 程序加载与执行的过程接下来总结一下 7 条规则

  1. Java 程序从开发到运行包括编译和运行两个阶段这两个阶段可以在不同的操作系统中完成例如在 windows 环境下进行编译在 Linux 环境下运行这是因为有 JVM 机制的存在做到了一次编译到处运行跨平台/可移植。
  2. 编译阶段需要使用 javac.exe命令运行阶段需要使用 java.exe命令。
  3.  一个 Java 源文件可能会编译生成多个 class 文件。
  4. Java 源文件中的源代码如果不符合 Java 的 语法 机制则编译时编译器会提示错误信息 并且无法生成 class 文件。反之则生成 class 文件而 class 文件才是最终要执行的程序此时将 Java 源文件删除是不会影响 Java 程序运行的。
  5.  若生成的字节码文件名为 A.class那么我们称 A为一个类的名字
  6. 当编译阶段完成之后我们可以使用 JRE 中的 java.exe 命令运行程序例如执行命令 “java A”该命令执行后会启动类加载器类加载器去硬盘上搜索 A.class 文件找到该字节 码文件之后将其加载到 JVM 当中JVM 中的解释器会将 A.class 字节码文件解释为操作系 统可以执行的二进制码然后操作系统通过执行二进制码和硬件平台交互。
  7. 运行 Java 程序的前提是当前操作系统上已经安装了对应版本的 JVMJVM 不是单独 安装的安装 JRE 即可不同的操作系统需要安装不同版本的 JRE不同版本的 JRE 对应不 同版本的 JVM。

 入门程序

开发环境已经搭建完毕可以开发我们第一个Java程序了。 HelloWorld案例是指在计算机屏幕上输出“HelloWorld”这行文字。Java程序开发三步骤编写编译运行

具体如下图所示

1编写Java源程序

在我们指定的目录下新建文本文件完整的文件名修改为 HelloWorld.java 其中文件名为 HelloWorld 后缀名必须为 .java 。 在文件中键入文本并保存代码如下

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

第一个 HelloWord 源程序就编写完成了Java源程序是程序员编写的程序员自己可以看得懂得程序。本质就是一个文本文件,但是扩展名不是.txt,而是.java。JVM是看不懂的也就不能运行因此我们必须将编写好的 Java源文件编译成JVM可以看懂的字节码文件。 

2编译Java源文件

JVM只能识别字节码文件(.class文件)。  如何把源文件(程序)翻译成JVM能够执行的字节码文件(程序)呢在DOS命令行中进入Java源文件的目录使用 javac 命令进行编译。

编译成功后命令行没有任何提示。打开 源文件目录发现产生了一个新的文件 HelloWorld.class 该文件就是编译后的文件是Java的可运行文件称为字节码文件有了字节码文件就可以运行程序了。

3运行Java程序

不管是源文件(程序)还是字节码文件(程序)都存储在硬盘中 不会自动执行,如何把字节码文件交给JVM执行呢 我们在DOS命令行中进入Java源文件的目录使用 java 命令进行运行。

当我们看见DOS的操作窗口打印出Hello World!就代表我们第一个Java程序成功了。

HelloWorld案例详解

类名后面的大括号限定了类体的范围方法名后面的大括号限定了方法体的范围

建议

  • 一个源文件中可以有多个类每一个类中都可以存在main方法
  • 源文件中有多少个类编译后会生成多少个.class字节码文件。 建议大家不管是否是public都与源文件名保持一致而且一个源文件尽量只写一个类目的是为了好维护。
  • 对代码进行修改后 一定要重写编译再运行才是修改的结果
  • java中使用大括号限定范围例如HelloWorld的后面有一对大括号{ }此对大括号 限定了类的范围。main方法的范围也是尤其后面的大括号来限定的。

在电脑系统或程序中隐藏着的一些未被发现的缺陷或问题统称为bug漏洞。出现了bug我们要多看多思考多查资料多尝试多总结。HelloWorld案例常见问题如下所示

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6