初识Java,环境安装,第一个Java程序
初识Java
基础知识图解
Java平台及应用
Java平台
平台 | 介绍 |
---|---|
Java SE标准版 | 支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,此版本以前称为J2SE |
Java EE企业版 | 是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如:Servlet 、Jsp等,主要针对于Web应用程序开发。版本以前称为J2EE |
Java ME小型版 | 支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简,并加入了针对移动终端的支持,此版本以前称为J2ME |
应用场景
应用场景 | 详细介绍 |
---|---|
企业级应用 | 主要指复杂的大企业的软件系统、各种类型的网站。Java的安全机制以及它的跨平台的优势,使它在分布式系统领域开发中有广泛应用。应用领域包括金融、电信、交通、电子商务等 |
Android平台应用 | Android应用程序使用Java语言编写。Android开发水平的高低很大程度上取决于Java语言核心能力是否扎实 |
大数据平台开发 | 各类框架有Hadoop,spark,storm,flink等,就这类技术生态圈来讲,还有各种中间件如flume,kafka,sqoop等等 ,这些框架以及工具大多数是用Java编写而成,但提供诸如Java,scala,Python,R等各种语言API供编程 |
移动领域应用 | 主要表现在消费和嵌入式领域,是指在各种小型设备上的应用,包括手机、PDA、机顶盒、汽车通信设备等 |
Java语言特点
- Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。如:安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查。
- Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。
- Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统的解释器中运行。
- Java是性能略高的。与那些解释型的高级脚本语言相比,Java的性能还是较优的。
- Java语言是原生支持多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。
核心机制
Java虚拟机
- JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。对于不同的平台,有不同的虚拟机。只有某平台提供了对应的java虚拟机,java程序才可在此平台运行。
- Java虚拟机机制屏蔽了底层运行平台的差别,实现了一次编译,到处运行
垃圾回收
- 相较于C/C++,Java 语言消除了程序员回收无用内存空间的责任:它提供一种系统级线程跟踪存储空间的分配情况。并在JVM空闲时,检查并释放那些可被释放的存储空间。
- 同时也需注意,垃圾回收在Java程序运行过程中自动进行,程序员无法精确控制和干预。
语言环境
- JDK(Java Development Kit Java开发工具包):JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。 其中的开发工具:编译工具(javac.exe) 打包工具(jar.exe)等。
- JRE(Java Runtime Environment Java运行环境) :包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
- 简单来说,JDK = JRE + 开发工具集(例如Javac编译工具等),JRE = JVM + Java SE标准类库
环境安装
- 以JDK8为例,进行安装流程的介绍。
软件安装
- 打开甲骨文官网,选择
Resources - Downloads - Developer Downloads
,在弹出页面,找到Java - Java (JDK) for Developers
,即可打开(下载页面)[https://www.oracle.com/java/technologies/downloads/] - 若需下载历史版本,则点击
Java archive
选项,即可查阅历史版本。 - 选择所需的Java版本与系统版本进行下载即可。
- 待下载完成后,双击运行,依照指引安装即可。
环境变量配置
右键我的电脑 - 属性
,打开关于
,选择相关设置 - 高级系统设置 - 环境变量
- 新建一项系统变量
JAVA_HOME
,值为 jdk 的安装路径,我在此处设置为C:\Program Files\Java\jdk1.8.0_331
。 - 新建一项系统变量
JRE_HOME
,值为 jre 的安装路径,我在此处设置为C:\Program Files\Java\jre1.8.0_331
。 - 配置系统变量
path
,删除第一条环境变量C:\Program Files (x86)\Common Files\Oracle\Java\javapath
或者C:\ProgramData\Oracle\Java\javapath
,如果没有则跳过。 - 在系统变量
path
中添加%JAVA_HOME%\bin
和%JRE_HOME%\bin
两条记录。
验证是否安装成功
win + R
输入cmd
,打开cmd命令窗- 输入
java -version
,若出现如下信息,则表示安装成功。
- 若出现
'java' 不是内部或外部命令,也不是可运行的程序或批处理文件
这样的信息,则说明Java系统环境变量未配置或配置不正确,需要重新检查安装路径是否正确。
API下载
- API (Application Programming Interface,应用程序编程接口)是 Java 提供的基本编程接口。
- Java语言提供了大量的基础类,因此 Oracle 也为这些基础类提供了相应的API文档,用于告诉开发者如何使用这些类,以及这些类里包含的方法。
- 学习 java 少不了 API文档,下载API文档可方便的进行各类功能的查阅。
第一个Java程序
Java的编译步骤
- Java程序的编译分为如下几个步骤:
- 将 Java 代码编写到扩展名为 .java 的文件中。
- 通过 javac 命令对该 java 文件进行编译。
- 通过 java 命令对生成的 class 文件进行运行。
具体操作
代码编写
- 使用VSCode编写如下代码并保存,文件名为
HelloWorld.java
。需要注意,文件名需与类名保持一致。
public class HelloWorld{
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
代码编译
- 在CMD命令行窗口下,移动至
HelloWorld.java
所在路径,并运行如下指令,使用javac编译工具对HelloWorld.java文件进行编译。
javac HelloWorld.java
- 如果程序没有错误,则不会有任何提示,但在当前目录下会出现一个
HelloWorld.class
文件,该文件称为字节码文件,也是可以执行的java的程序。
代码运行
- 有了可执行的java程序(
HelloWorld.class
字节码文件),即可通过运行工具java.exe对字节码文件进行执行。通过CMD命令行输入如下指令,注意不需要加.class
后缀,需要运行的是类名。
java HelloWorld
- 即可看到成功输出的
Hello World
代码小结
- Java源文件以“java”为扩展名。源文件的基本组成部分是类(class),如本例中的HelloWorld类。
- Java应用程序的执行入口是main()方法。它有固定的书写格式:
public static void main(String[] args) {...}
- Java语言严格区分大小写。
- Java方法由一条条语句构成,每个语句以“;”结束。
- 大括号都是成对出现的,缺一不可。
- 一个源文件中最多只能有一个public类。其它类的个数不限,如果源文件包含一个public类,则文件名必须按该类名命名。
参考:
《Java核心技术 卷Ⅰ》Cay S.Horstmann, Gary Cornell著,P1-P32