[学习笔记] Java简介及开发环境搭建
Java介绍
Java是由Sun MicroSystems公司(后被Oracle公司收购)的詹姆斯.高斯林开发,并于1995年5月正式推出的一种高级程序设计语言;
Java介于编译型语言和解释型语言之间,Java源码会被编译成一种字节码(类似于抽象的CPU指令),然后由针对不同平台编写的虚拟机加载字节码并执行,从而可以达到 “一次编写,到处运行” 的效果;
Java可运行于多个平台,如Windows、Mac OS及多种Unix版本的操作系统,只需要为每个平台分别开发虚拟机即可;
移动操作系统Android使用Java语言作为编程语言;
编译型语言与解释性语言的区别:
由于计算机不能理解高级语言,只能理解机器语言,所以需要将用高级语言编写的代码转换为机器码才能被计算机执行。转换的方式有两种,相应高级语言可以分为编译型语言和解释型语言:
- 编译
源程序经编译器编译成机器码文件并保存,以后运行时不需再编译,直接使用保存的文件即可,因此运行速度快,执行效率高,但一般无法移植到其他平台。
程序执行速度快,同等条件下对系统要求较低,开发操作系统/大型应用程序/数据库系统时都采用C、C++等编译型语言
- 解释
运行时使用专门的解释器对源程序逐行解释成符合特定平台的机器码并立即执行,因此跨平台性好,方便移植,但效率较低。
当编写网页脚本、服务器脚本、辅助开发接口这类对速度要求不高、对不同平台间的兼容性有一定要求的程序通常使用Python、JavaScript等解释型语言
Java与其他语言有些不同,针对不同的平台,Java有不同的JVM,实现跨平台运行。可以说Java是编译型语言,因为所有的Java代码都要编译为class文件。也可以说Java是解释型语言,因为Java源代码经过编译后生成的是字节码而不是机器码,只有经过解释器解释后才能在JVM上运行。
Java的三个版本及联系
- Java标准版/Java SE
— Java SE是Java的核心,包含Java标准的JVM和标准库
- Java企业版/Java EE
— 在Java SE的基础上增加大量的API和库以便开发Web应用程序,Java SE使用的虚拟机与Java EE相同
- Java微型版/Java ME
— 针对嵌入式设备的”瘦身版”Java SE,使用的JVM与Java SE不同,Java SE标准库无法在Java ME上使用
专业术语
JDK(Java Development Kit):编写Java程序需要的工具
JRE(Java Runtime Environment):Java字节码运行环境
SDK(Software Development Kit):软件开发工具包
DAO(Data Access Object):数据访问接口
MVC(Model View Controller):模型(Model)/视图(View)/控制器(Controller),一种软件设计典范
JRE与JDK的区别
JDK(Java开发者工具包),提供Java的开发环境(提供javac等编译工具将Java文件编译为class文件)和运行环境(提供JVM、Runtime核心类库将class文件解释并运行)
JRE是运行Java程序所必须的环境集合,包含JVM和Java核心类库,但不包含开发工具(编译器、调试器等)
开发环境搭建
Java程序必须在JVM上运行,所以从Oracle官网下载并安装JDK(JRE会一同安装),并配置环境变量。
配置环境变量步骤:
电脑 — 属性 — 高级系统设置 — 高级选项卡 — 环境变量 — “系统变量”中配置3个变量:JAVA_HOME、CLASSPATH(JDK1.5以上版本无需配置)、PATH(变量名不区分大小写)。
变量配置:
JAVA_HOME 变量指定了JDK的安装目录,在后续要使用该路径时,直接使用%JAVA_HOME%即可,避免每次都输入一长串的路径。当JDK路径改变时,仅需修改JAVA_HOME变量的值就可以了,无需对每一个以绝对路径方式对JDK安装目录的引用都进行修改。除此以外,某些第三方软件要引用JAVA_HOME变量才能正常使用。
CLASSPATH变量向解释器指定运行程序时到哪里引用自带的丰富类包 dt.jar和tools.jar,变量的值为.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar;
配置PATH变量后即可在系统的任何地方运行Java程序,变量的值为JAVA_HOME的bin目录( Windows 10中PATH分条显示,要将%JAVA_HOME%in;和%JAVA_HOME%jrein;分开添加,否则无法识别)
测试安装是否成功
开始 — 运行 — cmd — 输入”java -version”或”java”或”javac”后显示JDK版本信息则安装成功,若是显示的版本号信息与安装版本不符,则代表系统中存在多个版本的JDK且目标版本不是默认JDK,因此需要将目标版本在PATH变量中的顺序提前。
JAVA_HOME bin目录下的可执行文件的作用:
java是JVM可执行文件,运行Java程序时会启动,执行的编译后的代码
javac是Java的编译器,用于把Java源程序编译为字节码
jar用于把一组 .class文件打包成一个 .jar文件以便于发布
javadoc用于从Java源码中自动提取注释并生成文档
jdb是Java调试器,用于开发阶段的运行调试