(2)安装目录和概念解读
Java安装路径主要包含的目录如下:
E:. ├─bin │ └─server ├─conf │ ├─management │ └─security │ └─policy │ ├─limited │ └─unlimited ├─include │ └─win32 │ └─bridge ├─jmods ├─jre │ ├─bin │ │ └─server │ ├─conf │ │ └─security │ │ └─policy │ │ ├─limited │ │ └─unlimited │ ├─include │ │ └─win32 │ ├─legal │ │ ├─java.base │ │ ├─java.datatransfer │ │ ├─java.desktop │ │ ├─java.prefs │ │ └─java.xml │ └─lib │ ├─security │ └─server ├─legal │ ├─java.base │ ├─java.compiler │ ├─java.datatransfer │ ├─java.desktop │ ├─java.instrument │ ├─java.logging │ ├─java.management │ ├─java.management.rmi │ ├─java.naming │ ├─java.net.http │ ├─java.prefs │ ├─java.rmi │ ├─java.scripting │ ├─java.se │ ├─java.security.jgss │ ├─java.security.sasl │ ├─java.smartcardio │ ├─java.sql │ ├─java.sql.rowset │ ├─java.transaction.xa │ ├─java.xml │ ├─java.xml.crypto │ ├─jdk.accessibility │ ├─jdk.aot │ ├─jdk.attach │ ├─jdk.charsets │ ├─jdk.compiler │ ├─jdk.crypto.cryptoki │ ├─jdk.crypto.ec │ ├─jdk.crypto.mscapi │ ├─jdk.dynalink │ ├─jdk.editpad │ ├─jdk.hotspot.agent │ ├─jdk.httpserver │ ├─jdk.internal.ed │ ├─jdk.internal.jvmstat │ ├─jdk.internal.le │ ├─jdk.internal.opt │ ├─jdk.internal.vm.ci │ ├─jdk.internal.vm.compiler │ ├─jdk.internal.vm.compiler.management │ ├─jdk.jartool │ ├─jdk.javadoc │ ├─jdk.jcmd │ ├─jdk.jconsole │ ├─jdk.jdeps │ ├─jdk.jdi │ ├─jdk.jdwp.agent │ ├─jdk.jfr │ ├─jdk.jlink │ ├─jdk.jshell │ ├─jdk.jsobject │ ├─jdk.jstatd │ ├─jdk.localedata │ ├─jdk.management │ ├─jdk.management.agent │ ├─jdk.management.jfr │ ├─jdk.naming.dns │ ├─jdk.naming.rmi │ ├─jdk.net │ ├─jdk.pack │ ├─jdk.rmic │ ├─jdk.scripting.nashorn │ ├─jdk.scripting.nashorn.shell │ ├─jdk.sctp │ ├─jdk.security.auth │ ├─jdk.security.jgss │ ├─jdk.unsupported │ ├─jdk.unsupported.desktop │ ├─jdk.xml.dom │ └─jdk.zipfs └─lib ├─jfr ├─security └─server
bin目录
可执行文件,包括javac.exe、java.exe等。
需要将bin目录添加到bin目录下。
conf目录
配置文件
include目录
.h头文件
jmods
模块信息
legal
授权文件
lib
库,src.zip包含很多子目录。
一些基本概念:
JDK,即Java开发工具包 ( Java Development Kit),Java开发人士需要下载和安装JDK,目前的主流版本为JDK11。
JRE是Java SE运行时环境 (Java SE Runtime Environment),提供了运行Java应用程序所必须的软件环境等。无论是开发还是运行Java应用都必须安装。
前面的bin目录下有两个可执行文件:
javac.exe
编译器,主要用于将高级Java源代码翻译成字节码文件。
java.exe
解释器,主要用于启动JVM对字节码文件进行解释并执行。
其中,JDK、JRE、JVM之间的关系如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-azNf2l5g-1629031393221)(image/image.png)]
可以看到三者之间是相互包含的关系。
(3)编写Java程序的流程
开始阶段使用TE编写,来掌握基本的语法和编码技巧,同时熟悉指法。
代码如下:
/* * 项目名称:第一个Java程序 * 项目功能:打印hello world * 作 者:Corley * 版 本:V1.0 * 所 有 者:XXX * 备 注:TEST */ public class HelloWorld /*类名*/ { /*类体*/ public static void main /*主方法名*/ (String[] args) { /*主方法体*/ System.out.println("Hello World!"); } }
执行javac HelloWorld.java
,生成字节码文件HelloWorld.class,该文件直接打开会显示乱码;
执行java HelloWorld
,进行解释执行,打印如下:
Hello World!
执行流程示意如下:
(4)常见的错误和简化的编译执行
常见的错误:
需要class, interface或enum
入口关键字拼写出现错误,例如class 写成clas
找不到符号
字母大小写、拼写错误,例如类型String写成string
需要’;’
一行结束时未加分号,需要注意使用英文的分号;
非法字符: ‘\uxxxx’
使用了中文符号。例如使用了中文的分号,就会报错非法字符: '\uff1b'
mian
在类 中找不到 main 方法, 请将 main 方法定义为:
Java11新特性-简化的编译运行 :
在Java11中可以将编译运行的两步直接省为1步,即java HelloWorld.java ,此时就会自动先编译、再解释执行。
需要保证当前目录下不含有字节码文件,否则会报错。
(5)常用的快捷键和注释
Windows下常用的快捷键如下:
注释是用于进行代码说明的,即给程序员看的文字描述,编译器会忽略。
分类:
单行注释
以// 开始,到本行结束,都是注释。
多行注释
从/*开始,到*/结束,中间所有行都是注释。
多行注释不允许嵌套。
多行/文档注释
从/**开始,到*/结束,是一种支持提取的注释。
(6)环境变量的配置
前面可以直接执行javac xxx.java 、java xxx 等可以直接执行,是因为将JDK的安装目录下的bin目录添加到了环境变量,如果不添加环境变量则会报错'abc' 不是内部或外部命令,也不是可运行的程序或批处理文件。 。
为了将可以执行文件可以在任意路径中均可以使用,需要将该文件所在的路径信息添加到环境变量中,例如E:\Java\jdk-11.0.2\bin,Windows 10添加示意如下:
说明:
如果同时添加了多个JDK的bin路径,则会从前到后遍历配置的环境变量、使用找到的第一个路径对应的JDK。
配置环境变量后需要重启DOS窗口 ,才能生效。
考虑到可能需要更新JDK,则可以配置JAVA_HOME系统变量,再修改Path的路径,有2个好处:
- 如果以后需要更新JDK版本,只需要修改JAVA_HOME变量即可;
- Java EE也会用到JAVA_HOME变量,为后面的使用做准备。
(7)跨平台原理
Java相对于C、C++的一个重要特点是支持跨平台 ,也就是相同的字节码文件可以在不同的平台上执行,其中起重要作用的就是JVM:JVM将Java字节码翻译为某个具体平台能够执行的机器指令,由于Sun定义了JVM规范,而且不同的操作系统大多提供了JVM实现,才使得相同的一个字节码文件可以在不同的系统上运行,从而实现了“一次编译、到处使用”的效果。
如下图所示:
总结
大数据开发的基础是Java,因此必须要先掌握计算机的基础原理和基本的Java开发功底,为大数据开发打牢基础。
同时,本文只是知识文档的部分内容,如果要获取更完整的文档,可以私信交流。