初识Java语言
本章目标:
-
了解Java虚拟机与跨平台原理
-
熟练掌握安装、配置JDK开发环境
-
熟练掌握使用记事本开发Java程序
-
理解Java编译原理
-
会使用Eclipse开发Java程序
1. Java概述(理解)
1.1 为什么学习Java语言(理解)
-
简单易学
首先Java是一个面向对象的编程语言,容易理解.而且略去了多重加载,指针等难以理解的概念。 并且实现了自动垃圾回收,大大简化了程序设计
-
使用广泛
不得不承认的是,Java确实有很多企业在用,而且都是用在大项目上。这就意味着Java方面的 工作比较好找,另一点是在做Java开发时如果遇到问题,可以很容易从网上找到解决办法. Oracle声称超过三十亿的设备上运行着Java,那是一个巨大的数字,不是吗?大多数公司用一 种 或者其他方式使用Java。很多服务器端使用Java来处理每天数十百万的请求,高频率的交易应 用 同样也是用Java
-
市场前景大
目前,计算机语言中Java语言市场占有率达20%,为世界第一编程语言。 据了解,在15年的时 候, 我国对软件开发人才的需求就已经达到60万,并且每年以28%左右的速度增长着。 自Java语言诞生以来,一直都居于领导地位,无论是做网站还是应用于移动端,都是不可缺少 的, 就目前看来,在智联招聘网站上面,Java的招聘量仍然是最多的,基本是其他语言的3倍以 上, 而在移动端方面,有android与ios抗衡,也就是说,在移动端和服务器端,Java都是比较占优势
-
薪资水平高
各大招聘网站招聘职位众多,仅智联招聘网站北京地区招聘java软件工程师的职位就达到 49643 个;更不用说全国了,由来自全国19911家公司的 23339名员工提供的数据显示,全国Java开 发者 的平均月工资为7838元,高于2017年全国平均工资水平7665元。
-
面向对象
基于对象的编程更符合人的思维模式,使人们更容易编写程序。在实际生活中,我们每时每刻都与对象在打交道。
1.2 Java发展史
-
1995年Sun公司发布Java1.0版本
-
1997年发布Java 1.1版本
-
1998年发布Java 1.2版本
-
2000年发布Java 1.3版本
-
2002年发布Java 1.4版本
-
2004年发布Java 1.5版本
-
2006年发布Java 1.6版本
-
2009年Oracle甲骨文公司收购Sun公司,并于2011发布Java 1.7版本
-
2014年发布Java 1.8版本
-
2017年发布Java 9.0版本
-
2018年3月20日,Java 10正式发布
-
2018年9月26日,Java 11LTS(长期支持版)正式发布
-
2019年3月19日,JDK 12发布
-
2019年9月13日,JDK 13发布
-
2020年3月17日,JDK 14发布
…
-
2021年9月14日,发布Java 17,将是 Java 的下一个 LTS(长期支持) 版本
1.3 Java可以做什么
- Java可以做网站
- Java可以做Android应用
- Java可以做游戏 Java可以做软件
- Java可以做嵌入式设备及消费类电子产品
- Java可以用分析大数据,例如Hadoop以及其他大数据处理技术很多都是用Java。
1.4 Java技术平台
- Java SE :Standard Edition 支持面向桌面级应用,提供了完整的java核心API
- Java EE :Enterprise Edition 支持使用多层架构的企业级应用,如EJB,CRM等, 并额外提供大量的企业级类库
- Java ME : Micro Edition 是精简版的SE,主要用于嵌入式设备,比如:无线手持设备、 通信终端、医疗设备、信息家电(如数字电视、机顶盒、电冰箱)、汽车电子设备等
2. 开发第一个Java程序
2.1 什么是程序(理解)
"程序"一词源于生活,通常值完成某些事情的一种既定的方式和过程.
程序:为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合
如何编制程序呢?
这就需要工具,即编程语言。编程语言有很多种,它们都有自己的语法规则,可以选用其中一种来描述程序,传达给计算机.例如:用Java语言描述的程序称为Java程序.计算机阅读该程序,也就是阅读指令集,然后就 按部就班的严格执行.
通常来讲,编程程序时选用的语言就是有利于人类读写的语言,俗称高级语言.但是计算机仅明白0和1代码组成的低级语言(即二进制语言).中间需要进行语言转换.开发高级语言的工程师已经为我们准备好了**“翻译官”**,因此我们只需要学好高级语言即可
2.2 Java虚拟机一一JVM
JVM(Java Virtual Machine ):Java虚拟机,简称JVM,是运行所有Java程序的假想计算机, 是Java程序的运行环境,是Java最具吸引力的特性之一。我们编写的Java代码,都运行在 JVM 之上。
跨平台:
任何软件的运行,都必须要运行在操作系统之上,不同的操作系统对外提供的应用程序接口是不一样的,比如我们现在要实现一个让电脑的声卡设备发出声音的应用程序,那么在Windows和Linux提供的接口是不一样的。之所以我们用Java编写的代码可以运行在任何的操作系 统上,是因为在不同的操作系统上有不同的JVM实现。
而JVM是只认字节码的,同一份Java代码编译生成的Java字节码肯定是唯一的,当它在不同的操作系统上运行的时候,由各个操作系统版本的JVM去解释,翻译成各自操作系统的接口调用,进而实现我们应用程序的功能。这就实现了同一份Java源代码在不修改的情况下,就可以在多个平台上运行了。这个特性称为Java语言的跨平台特性。
因此,该特性是由JVM实现的,我们编写的程序运行在JVM上,而JVM 运行在操作系统上。
如图所示:
2.3 JRE与JDK
- JRE (Java Runtime Environment) :是Java程序的运行时环境,包含 JVM 和运行时所需要的 核心类库 。
- JDK (Java Development Kit):是Java程序开发工具包,包含 JRE 和开发人员使用的工具。
我们想要运行一个已有的Java程序,那么只需安装 JRE 即可。 我们想要开发一个全新的Java程序, 那么必须安装 JDK 。
如图所示:
三者的关系如下:
2.4 开发Java程序的步骤
1. 下载JDK
jdk8下载地址 :https://www.oracle.com/java/technologies/downloads/#java8
jdk11下载地址:https://www.oracle.com/java/technologies/downloads/#java11
jdk17下载地址:https://www.oracle.com/java/technologies/downloads/#java17
2. 安装JDK并配置环境变量:
安装:
-
运行安装包。安装之前先更改目录。(建议将目录改为:D:\Java\jdk8)
-
点击下一步安装并等待
-
新跳出来一个安装JRE的窗口,可以不用安装,跳过就好
基于Windows系统的jdk11或者jdk17,可以直接下载压缩包,无需安装,解压到指定的目录就可以
配置环境变量
-
复制jdk8所在的目录(D:\Java\jdk8)
-
计算机→属性→高级系统设置→高级→环境变量
-
系统变量→新建→在变量名中输入:
JAVA_HOME
变量值中输入:
D:\Java\jdk8
然后点击确定
-
Path变量→编辑→
-
如果是Win7系统,在变量值的最后输入:
;%JAVA_HOME%\bin
一路确定即可
-
如果是Win10系统,点击新建,输入:
%JAVA_HOME%\bin
一路确定即可
-
-
cmd窗口,输入
java -version
看见java版本信息证明环境变量配置成功
备注
环境变量
环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。 例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。 用户通过设置环境变量,来更好的运行程序。
3. 开发Java程序
开发环境已经搭建完毕,可以开发我们第一个Java程序了。 Java程序开发三步骤:编写、编译、运行
示例:使用记事本编写第一个Java程序
步骤如下:
-
cmd窗口,切入D盘,输入命令
notepad HelloWorld.java
选择是,编写如下Java代码:
public class HelloWorld{ public static void main(String[] args){ System.out.println("Hello,World!!!!"); } }
点击保存,关闭记事本。
-
回到cmd窗口,输入命令:
javac HelloWorld.java
生成HelloWorld.class
-
输入命令
java HelloWorld
运行出结果
错误总结:
- public修饰的类的名称必须与Java文件同名
- 严格区分大小写,Java对大小写敏感
- 所有符号必须是英文符号,并且配对出现(比如{})
- 每一条Java语句必须以分号结束
2.5 Java程序结构
-
编写Java程序框架
public class HelloWorld{ }
-
在程序框架内部编写main函数的框架
public static void main(String[] args){ }
-
在main函数中,编写业务代码
System.out.println("Hello,World!!!");
2.6 Java程序的注释:
为方便程序的阅读,Java语言允许在程序中著名一些说明性的文字,这就是代码的注释.编译器并不会 处理这些注释,所以不用担心添加了注释会增加程序的负担.
代码中的注释好比我们看书时,在重要或者精彩地方做的一些笔记.这些注释主要是方便自己或者团 队员工阅读代码时用的.
良好的代码注释可以给别人留下很深的印象,所以从现在开始养成良好的代码注释习惯
在Java中,常用的注释有三种:
- 单行注释
//
注释的内容主要用于某一行代码之上 来说明某一行的代码作用- 多行注释
/*......*/
若注释说明的文字多时,则用多行注释- 文档注释
/**......*/
,这种方式和第二种方式相似。这种格式是为了便于javadoc 程序自动生成文档。
2.7 Java编码规范
此处参考阿里Java开发手册
3. Java程序开发软件
Java世界的常用的程序开发软件:
- Eclipse
- MyEclipse
- Intellij IDEA
- VSCode
- 。。。。。。
此处暂时以Eclipse开发软件为例讲解,后期可转入Intellij IDEA或者VSCode
3.1 Eclipse
Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发通过安装不同的 插件Eclipse可以支持不同的计算机语言,比如C++和Python等开发工具。
Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软 件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。
Eclipse下载地址:https://www.eclipse.org/downloads/
3.2 使用Eclipse开发Java程序的步骤
- 创建一个Java项目
- 手动创建Java的源程序
- 编译Java代码
- 运行Java代码
3.3 Eclipse中Java的项目组织结构
- Eclipse包资源管理器
- 用包组织源文件,类似与文件夹
- 选择菜单“Windows→Show View→Package Explorer"打开
- Eclipse项目结构
- 导航器:类似于Windows中的资源管理器
- 选择菜单“Windows→Show View→Navigator"打开
3.4 常见的错误总结
- 类不可以随便命名
- void关键字不可少
- Java对英文字母大小写敏感
- 每一条Java语句必须以分号结束
- 注意输出字符串时必须用引号括起来