2.1、Java发展简史
1995-05-23 Java语言诞生
1996-01 JDK1.0正式发布
1997-02 JDK1.1正式发布
1998-12 JDK1.2正式发布
1999-06 Sun公司发布了JavaSE、JavaEE、JavaME三大版本
2000-05 J2EE 1.3正式发布
2002-02 J2EE 1.4正式发布
2004 J2EE 1.5正式发布
2005 J2EE、J2SE、J2ME正式改名为JavaEE、JavaSE、JavaME
2006 Java SE 1.6正式发布 Java开源
2009 Sun被甲骨文收购
2011-07-28 Java SE 1.7正式发布
2014-03-18 Java SE 1.8正式发布 现在企业常用版本,有的也会用11版本
2017-09-22 Java SE 1.9正式发布
2018-03-21 Java SE 1.10正式发布
2018-09-25 Java SE 1.11正式发布
2019-03-20 Java SE 1.12正式发布
2019-09 Java SE 1.13正式发布
2020-09 Java SE 1.14正式发布
2020-03 Java SE 1.15正式发布
2021-03-16 Java SE 1.16正式发布
2.2、Java特性与优势
- 简单性:C++的简化版,语法是基于C语言的。
- 可移植性:Java的核心优势。一次编译,到处运行。
- 安全性:Java适合于网络/分布式环境,为了达到这个目标,在安全性方面投入了很大的精力,使Java可以很容易构建防病毒,防篡改的系统。
- 面向对象:Java是一门完全面向对象的编程语言。
- 高性能:在不断完善的过程中,Java已经逐渐摆脱了低性能的这个短腿。
- 多线程:Java是多线程语言,它提供支持多线程的执行,能同时处理不同任务,使具有线索的程序设计很容易。
- 稳健性:Jav吸收了C/C++的许多优点,使得自己不断的完善。如果出了什么意外程序也不会崩溃。
- 动态性:Java是一门动态语言,能够适应环境的变化。
2.3、Java三大版本
- JavaSE(Java Standard Edition,Java 标准版):
- 图形界面开发,一般用于电脑客户端开发。
- Java技术的核心和基础,Java ME和Java EE编程的基础。
- JavaEE(Java Platform,Enterprise Edition,Java 企业版):企业级开发,一般用于服务端应用开发。
- JavaME(Java Platform,Micro Edition,Java 微型版):嵌入式开发,一般用于开发嵌入式应用,如电饭煲,手机软件。
2.4、JDK、JRE、JVM
-
JDK(Java Development Kit,Java的开发工具包):JDK是整个JAVA的核心,包括了Java运行环境(JRE),Java工具和Java基础的类库。
-
JRE(Java Runtime Environment,Java运行环境):运行Java程序必须的环境集合,包含JVM标准实现及Java核心类库。
-
JVM(Java Virtual Machine,Java虚拟机):Java实现跨平台的核心部分,能够运行Java程序。
- Java跨平台实现简单原理:
2.5、安装开发环境
https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html
Linux:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html#license-lightbox
2.5.1、Windows下安装
- 双击打开
.exe
包后选择自己的安装目录,其他的一直下一步即可。 - 安装完后,右击
我的店
,点击属性
,选择高级系统设置
:
在 “系统变量” 中设置 3 项属性,JAVA_HOME
、PATH
、CLASSPATH
(大小写无所谓),若已存在则点击"编辑",不存在则点击"新建"。
如果使用 1.5 以上版本的 JDK,不用设置 CLASSPATH 环境变量,也可以正常编译和运行 Java 程序。
变量参数配置如下:
变量名:JAVA_HOME
变量值:E:\Java\jdk1.8.0_261 JDK安装环境
变量名:CLASS_PATH
变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\rt.jar;
变量名:PATH
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; win10中分条创建
JAVA_HOME
CLASS_PATH
PATH
测试Java是否安装成功,在DOS命令窗口输入 java -version
和 javac -version
:
2.5.2、Ubuntu下安装
- 下载Linux安装包,把安装包上传到Ubuntu文件夹下(文件夹名称和位置按照自己情况来)
- 运行
tar zxvf jdk-8u291-linux-x64.tar.gz
命令解压安装包。
- 修改环境变量,用
sudo vim /etc/profile
打开文件,在末尾添加
export JAVA_HOME=/home/jf/Java/jdk1.8.0_291 # 这个为自己jdk解压目录
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
-
运行
source ~/.bashrc
使环境变量生效 -
系统注册JDK
sudo update-alternatives --install /usr/bin/java java /home/jf/Java/jdk1.8.0_291/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /home/jf/Java/jdk1.8.0_291/bin/javac 300
- 运行
java -version
和javac -version
测试环境是否安装
- 如果存在多个JDK,通过
sudo update-alternatives –config java
命令切换
-bash: /home/superadmin/java/jdk1.8.0_291/bin/javac: cannot execute binary file: Exec format error
错误,JDK安装包有问题,下载正确的安装包重新安装即可。
2.6、HelloWorld详解
/*
public 共有的
class 声明为一个类
HelloWorld 类名
static 静态修饰符
void 无返回值
main 主入口
String[] 字符串数组
args 数组名称
*/
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello Wrold!"); // 打印Hello Wrold!
}
}
进入DOS命令窗口,执行 javac xxx.java
编译Java程序,编译成功后在执行 java xxx
运行Java程序,运行时无 .java
后缀
Java程序开发执行流程:
- 编写
java
源程序(.java
) 源文件/源代码 - 通过
javac
命令编译生成.class
文件(字节码文件) - 通过
java
命令运行.class
文件(字节码文件) - 类加载器加载程序,程序运行输出数据
2.7、编译型和解释型
计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。
由高级语言转换成机械语言的方式有编译和解释两种,由此高级语言就划分为了编译型语言和解析型语言。
2.7.1、编译型语言
通过编译器将源代码编译为机器码后运行的语言,运行时不需要重新翻译,直接使用编译的结果就行了。
特点:在程序执行之前,需要一个专门的编译过程,把源代码编译成机器语言的文件,如 .exe
格式文件。只需编译一次,以后运行时不需要编译,所以编译型语言执行效率高。
2.7.2、解释型语言
解释器直接执行,不需要编译,每执行一次都要翻译一次。
特点:事先不需要先编译,只要提供环境即可运行。需要重复生成机器码,效率较低。
2.7.3、Java是编译型还是解释型
Java语言同时兼具编译型语言和解释型语言的特点。
原文链接: 点击跳转