《Java 核心技术卷1 基础知识》第二章 Java 程序设计环境 笔记

简介: 《Java 核心技术卷1 基础知识》第二章 Java 程序设计环境 笔记

2.1 安装 Java 开发工具包

2.1.1 下载 JDK

下载 Java 开发工具包,可以访问 Oralce 公司的网站:Java Downloads | Oracle

表2-1 Java 术语

术语名

缩写

解释

Java Development Kit(Java 开发工具包)

JDK

编写 Java 程序的程序员使用的软件

Java Runtime Environment(Java 运行时环境)

JRE

运行 Java 程序的用户使用的软件

Server JRE(服务器 JRE)

在服务器上运行 Java 程序的软件

Standard Edition(标准版)

SE

用于桌面或简单服务器应用的 Java 平台

Enterprise Edition(企业版)

EE

用于复杂服务器应用的 Java 平台

Micro Edition(微型版)

ME

用于小型设备的 Java 平台

Java FX

用于图形化用户界面的一个备选工具包,在 Java 11 之前的某些 Java SE 发布版本中提供

OpenJDK

Java SE 的一个免费开源实现

Java 2

J2

一个过时的术语,用于描述 1998 ~ 2006 年之间的 Java 版本

Software Development Kit(软件开发工具包)

SDK

一个过时的术语,用于描述 1998 ~ 2006 年之间的 JDKa

Update

u

Oracle 公司的术语,表示 Java 8 之前的 bug 修正版本

NetBeans

Oracle 公司的集成开发环境

对于 Linux,还可以在 RPM 文件和 .tar.gz 文件之间做出选择。我们建议使用后者,这样可以在你希望的任何位置直接解压这个压缩包。

  • 你需要的是 JDK,而不是 JRE
  • 对于 Linux,选择 .tar.gz 版本

2.1.2 设置 JDK

安装这个开发工具包并明确要在哪里安装

在 Windows 上,默认位置,如 c:\Programe Files\Java\jdk-11.0.x

在 Mac 上,会把软件安装到 /Library/Java/JavaVirtualMachines/jdk-11.0.x.jdk/Contents/Home

在 Linux 上,只需要把 .tar.gz 文件解压缩到你选择的某个位置

在 Windows 或 Linux 上安装 JDK 时,还需要另外完成一个步骤:将 jdk/bin 目录添加到可执行路径中 —— 可执行路径是操作系统查找可执行文件时所遍历的目录列表


在 Linux 中,需要在 ~/.bashrc 或 ~/.bash_profile 文件的最后增加这样一行

export PATH=jdk/bin:$PATH


测试是否设置是否正确:打开一个终端窗口,键入


javac --version


然后按回车键。应该能看到显示以下信息


javac 9.0.4


2.1.3 安装库源文件和文档

类库源文件在 JDK 中以压缩文件 lib/src.zip 的形式发布


编译器、虚拟机、原生方法以及私有辅助类,访问 http://openjdk.java.net


文档包含在一个压缩文件中,它是一个独立于 JDK 的压缩文件,从网站 Java Downloads | Oracle 下载这个文档


本书的程序示例,可以从 http://horstmann.com/corejava 下载


2.2 使用命令行工具

javac Welcome.java


java Welcome


javac 程序是一个 Java 编译器,它将文件 Welcome.java 编译成 Welcome.class


java 程序启动 Java 虚拟机,虚拟机执行编译器编译到类文件中的字节码


如果手工输入源程序,一定要注意正确地输入大小写

编译器需要一个文件名,而运行程序时,只需要指定类名

Java 区分大小写

2.3 使用集成开发环境

可以免费得到一些很棒的开发环境,如 Eclipse、IntelliJ IDEA 和 NetBeans


2.4 JShell

JShell 程序提供了一个“读取 - 计算 - 打印循环”(Read - Evaluate - Print Loop,REPL)


键入一个 Java 表达式;JShell 会评估你的输入,打印结果,等待你的下一个输入


要启动 JShell,只需要在终端窗口中键入 jshell

% jshell
|  欢迎使用 JShell -- 版本 13.0.2
|  要大致了解该版本, 请键入: /help intro
jshell> "Core Java".length()
$1 ==> 9
jshell> 5 * $1 - 3
$2 ==> 42
jshell> int answer = 6 * 7
answer ==> 42
jshell> Math.
E                 IEEEremainder(    PI                abs(              
acos(             addExact(         asin(             atan(             
atan2(            cbrt(             ceil(             class             
copySign(         cos(              cosh(             decrementExact(   
exp(              expm1(            floor(            floorDiv(         
floorMod(         fma(              getExponent(      hypot(            
incrementExact(   log(              log10(            log1p(            
max(              min(              multiplyExact(    multiplyFull(     
multiplyHigh(     negateExact(      nextAfter(        nextDown(         
nextUp(           pow(              random()          rint(             
round(            scalb(            signum(           sin(              
sinh(             sqrt(             subtractExact(    tan(              
tanh(             toDegrees(        toIntExact(       toRadians(        
ulp(              
jshell> Math.l
log(     log10(   log1p(   
jshell> Math.log10(0.001)
$4 ==> -3.0
jshell> Math.log10(1000)
$5 ==> 3.0
jshell> /exit
|  再见
相关文章
|
4天前
|
监控 负载均衡 Dubbo
|
2月前
|
Java C++ 索引
【Java】JavaSE基础知识
【Java】JavaSE基础知识
103 0
|
27天前
|
JavaScript Java 应用服务中间件
centos部署vue项目(java,tomcat环境的搭建)
centos部署vue项目(java,tomcat环境的搭建)
16 0
|
4天前
|
Java 测试技术
滚雪球学Java(06):Java基础知识:数据类型和取值范围解析
【2月更文挑战第9天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!!
46 3
|
25天前
|
算法 Java 程序员
Java数组全套深入探究——基础知识阶段4、数组的遍历
Java数组全套深入探究——基础知识阶段4、数组的遍历
22 0
|
25天前
|
存储 Java 程序员
Java数组全套深入探究——基础知识阶段3、数组下标操作
Java数组全套深入探究——基础知识阶段3、数组下标操作
12 0
|
25天前
|
存储 Java 程序员
Java数组全套深入探究——基础知识阶段2、数组的定义语法
Java数组全套深入探究——基础知识阶段2、数组的定义语法
15 0
|
25天前
|
存储 Java 程序员
Java数组全套深入探究——基础知识阶段1、数组的概述
Java数组全套深入探究——基础知识阶段1、数组的概述
13 0
|
1月前
|
存储 缓存 Java
【Java】《2小时搞定多线程》个人笔记
【Java】《2小时搞定多线程》个人笔记
112 0
|
2月前
|
XML JSON Java
java项目中使用protobuf扫盲笔记
最近公司 Java 项目中有用到 protobuf,查了些资料还是一脸迷茫。
38 1

相关产品

  • 云迁移中心