第二章 Java程序初体验
2.1 Java背景介绍
2.1.1 Java名称的由来
在最初,Java语言是叫做oak(橡树)。是因为刚开始公司门口有一颗橡树。所以就叫做橡树。然后发现oak已经被美国橡树公司注册了,就不能再继续使用了。所以需要改名。而程序员最爱喝的是咖啡,盛产咖啡的岛叫做爪哇岛,由此语言就叫做Java了。
2.2.2 Java语言的发展
Java语言是美国Sun公司(Stanford University Network),在1995年推出的高级的编程语言。所谓编程语言,是计算机的语言,人们可以使用编程语言对计算机下达命令,让计算机完成人们需要的功能。2009年,Sun公司被甲骨文公司收购,所以我们现在访问oracle官网即可:Oracle | Cloud Applications and Cloud Platformhttps://www.oracle.com
Java语言共同创始人之一:詹姆斯·高斯林 (James Gosling),被称为“Java之父”
2.2.3 Java的三大平台
-
JavaSE
Java 语言的(标准版),用于桌面应用的开发,是其他两个版本的基础。
-
JavaME
Java 语言的(小型版),用于嵌入式消费类电子设备。
-
JavaEE
Java 语言的(企业版),用于 Web 方向的网站开发。
JavaSE:
Java 语言的(标准版),用于桌面应用的开发,是其他两个版本的基础。
学习 Java SE 的目的 : 为今后要从事的 Java EE 开发,打基础。
桌面应用 :
用户只要打开程序,程序的界面会让用户在最短的时间内找到他们需要的功能,同时主动带领用户完成他们的工作并得到最好的体验。
比如:操作系统里面的计算器。
比如:坦克大战小游戏。
JavaME:
Java ME : Java 语言的(小型版),用于嵌入式消费类电子设备。
比如:以前诺基亚的塞班系统,里面的一些应用程序就是用JavaME开发的。
但是随着塞班系统渐渐的没落,JavaME也退出了历史舞台。
JavaEE:
Java 语言的(企业版),用于 Web 方向的网站开发。
网站:通过跟后台服务器的交互,将查询到的真实数据再通过网页展示出来。
简单理解:网站 = 网页浏览器数据展示 + 后台服务器
比如:
2.2 Java跨平台工作原理
2.2.1 平台
平台:指的是操作系统。
-
Windows
-
MacOS
-
Linux
2.2.2 跨平台
Java 程序不需要进行任何修改,就可以在任意操作系统上运行。
注意:不是所有的语言都具备这样的特征。比如:C#只能在windows上运行。
2.2.3 Java实现跨平台的原理
编写的Java代码并不是直接运行在操作系统当中的。而是运行在安装的JVM虚拟机中的。每一个操作系统都会对应各自版本的虚拟机。
思考:JVM 本身是否可以跨平台
JVM 虚拟机本身不允许跨平台,每一个操作系统都有对应版本的虚拟机。允许跨平台的是 Java 程序
2.3 JRE和JDK介绍
-
JRE (Java Runtime Environment) :是Java程序的运行时环境,包含
JVM
和运行时所需要的核心类库
。 -
JDK (Java Development Kit):是Java程序开发工具包,包含
JRE
和开发人员使用的工具。
我们想要运行一个已有的Java程序,那么只需安装JRE
即可。
我们想要开发一个全新的Java程序,那么必须安装JDK
。
小贴士:
三者关系: JDK > JRE > JVM
2.4 JDK的下载和安装
2.4.1 Java的发展历史
-
1995年Sun公司推出Java语言
-
1996年发布Java 1.0版本
-
1997年发布Java 1.1版本
-
1998年发布Java 1.2版本
-
2000年发布Java 1.3版本
-
2002年发布Java 1.4版本
-
2004年发布Java 5.0版本
-
2006年发布Java 6.0版本
-
2009年Oracle甲骨文公司收购Sun公司
-
2011年发布Java 7.0版本
-
2014年发布Java 8.0版本
-
2017年9月发布Java 9.0版本
-
2018年3月发布Java 10.0版本
-
2018年9月发布Java 11.0版本
-
2019年3月发布Java 12.0版本
-
2019年9月发布Java 13.0版本
-
2020年3月发布Java 14.0版本
小贴士:
Java5.0:里程碑性质的版本,也是第一个大版本号更新。
Java8.0:企业中用的最多的版本。
Java14.0:目前最新的,也是课程中学习的版本。
2.4.2 下载
-
通过官方网站获取JDK
网址:http://www.oracle.comhttp://www.oracle.com
-
点击“products”然后选择“Java”
-
点击“download Java”进入下载页面
-
点击下载
-
-
针对不同的操作系统,需要下载对应版本的JDK。
如果是windows64位的操作系统,可以点击下方红框的连接进行下载
2.4.3 安装
-
双击打开安装包
-
双击打开之后,直接点击下一步
-
选择安装路径,再点击下一步
-
-
等待进度条完成
-
-
点击关闭,安装成功。
-
小贴士: 安装路径不要有中文,不要有空格 找一个固定的文件夹专门安装所有跟开发相关的软件,方便管理。
2.4.4 JDK的安装目录介绍
目录名称 | 说明 |
---|---|
bin | 该路径下存放了JDK的各种工具命令。javac和java就放在这个目录。 |
conf | 该路径下存放了 JDK 的相关配置文件 |
include | 该路径下存放了一些平台特定的头文件 |
jmods | 该路径下存放了 JDK 的各种模块 |
legal | 该路径下存放了 JDK 各模块的授权文档 |
lib | 该路径下存放了 JDK 工具的一些补充 JAR 包 |
2.5 HelloWorld
2.5.1 HelloWorld的仪式感
HelloWorld中文意思是『你好世界』。该程序的效果就是在让程序帮我们展示一段文字,内容为 HelloWorld。
程序员在学习任何一门编程语言,第一个入门案例,都是 HelloWorld。
2.5.2 书写步骤
-
新建一个Java文件,修改名称为HelloWorld.java
-
用记事本打开HelloWorld.java文件,输写程序内容
-
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World"); } }
-
保存(快捷键Ctrl+s)
-
编译文件
javac HelloWorld.java
-
运行文件
java HelloWorld
小贴士:
新建的HelloWorld.java文件一定要放在JDK安装目录的bin目录下面。
2.5.3 HelloWorld代码详解
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
class : 定义一个类,后面跟上的是类名名称。类是Java中最基本的组成单元。
第二行代码:程序执行时的入口点,main方法称之为主方法。
第三行代码:使程序能够输出打印双引号中包裹的内容。
2.6 Path环境变量的配置
2.6.1配置环境变量的目的
在刚刚写的代码中,只能存放在bin目录下,才能使用 javac 和 java 工具。如果我想把代码存放在任意的目录下,在任意的目录下都可以使用javac 和 java 工具该怎么办呢? 就可以把 javac 和 java配置到环境变量当中。
2.6.2 配置步骤
-
按下 Win键 + E ,找到计算机
-
-
右键点击计算机,选择属性
-
-
点击高级系统设置
-
选择高级,再点击下面的环境变量
-
点击系统变量下面的新建
-
会弹出这样的界面
-
-
变量名后面输入:JAVA_HOME
变量值后面:将JDK的安装路径复制过来,
注意:不带bin目录
操作完毕点击确定
-
选择Path。
-
此处还是要选择下方系统变量中的Path。
点击编辑
-
在弹出的页面中点击编辑文本
-
点击完毕之后会弹出这样的界面。
-
注意:里面的内容不能删除。
-
在变量值的最前面输入:
-
%JAVA_HOME%\bin; 输入完毕确定。
其中使用两个百分号包住JAVA_HOME,表示引用了JAVA_HOME里面的值。
分号,表示多个环境变量之间的间隔。
注意:所有符号一定要是英文状态下的。
-
-
打开CMD,输入java回车。
如果出现一长串很多的白色文字,表示配置成功。
-
2.7 注释
2.7.1 什么是注释
注释:就是对代码的解释和说明。其目的是让人们能够更加轻松地了解代码。为代码添加注释,是十分必须要的,它不影响程序的编译和运行。
2.7.2 注释的分类
-
单行注释
格式:
// 注释信息
-
多行注释
格式:
/* 注释信息 */
-
文档注释
格式:
格式:/** 注释信息 */
文档注释目前用不上,了解即可。
2.7.3 注释的使用
//这是通过class创建了一个类,类名叫做HelloWorld public class HelloWorld { /* 这是程序的入口点,main方法也称之为主方法。 如果代码中没有编写主方法,将无法运行 */ public static void main(String[] args) { //这是一条打印语句,可以将双引号中所包裹的内容打印在控制台。 System.out.println("HelloWorld"); } }
2.7.4 注释的注意点
注释内容不会参与编译和运行。
举例:哪怕注释写成下面这个样子,在运行的时候也不会有问题。
因为注释的内容是不会参与编译和运行的。