JAVA基础-2 JDK版本与安装

1、JDK历史

JDK是编译和解释JAVA语言的工具。最早的时候,JDK是由 Sun(www.sun.com)公司提供的,但是Sun公司被 Oracle(www.oracle.com)收购,Oracle JDK 1.8版本后逐渐商业化。

                                                                                                                                (网络图,侵删) 

  • JDK:Java Development Kit,Java的开发和运行环境,包含开发工具和JRE。
  • JRE:Java Runtime Environment,Java程序的运行环境,Java运行所需的类库和JVM
  • JVM:Java Virtual Machine,虚拟机,用于保证Java跨平台的特性
    • Java 的跨平台不是指 Java 语言本身具有跨平台特性,而是不同平台上都有可以让Java 运行的环境,这个运行环境就是 JRE。JRE 由 JVM 和其目录下类库组成,在运行时 JVM 通过类加载器加载字节码,以解释或者编译的方式将字节码转换成目标机器码交给本地系统去执行,也就实现了“一次编译到处运行“的效果

2、OpenJDK 和 Oracle JDK 区别

  • 授权协议的不同
    • openjdk采用GPL V2协议放出,而JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2允许在商业上使用,而JRL只允许个人研究使用
  • OpenJDK不包含Deployment(部署)功能
    • 部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,这些功能在Openjdk中是找不到的
  • OpenJDK源代码不完整
    • 在采用GPL协议的OpenJDK中,Sun JDK的一部分源代码因为产权的问题无法开放OpenJDK使用,其中最主要的部份就是JMX中的可选元件SNMP部份的代码
  • 部分源代码用开源代码替换
    • 由于产权的问题,很多产权不是Sun的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用Free Type代替
  • OpenJDK只包含最精简的JDK
    • OpenJDK不包含其他的软件包,比如Rhino Java DB JAXP……,并且可以分离的软件包也都是尽量的分离,但是这大多数都是自由软件,你可以自己下载加入

3、建议

1、优先选择OpenJDK

2、Oracle 不再免费提供最新的OpenJDK

3、AdoptOpenJDK下的Dragonwell是一个很好的替代品

        下载地址:AdoptOpenJDK  https://adoptopenjdk.net/

4、安装

        Linux

1、下载并解压       

2、打开环境配置文件

        vi ~/.bashrc

3、添加全局环境

        export JAVA_HOME=安装地址
        export PATH=$PATH:$JAVA_HOME/bin

        Windows

AdoptOpenJDK 提供安装文件,正常安装即可

win10 配置Java环境变量例子
 
1、打开 我的电脑 -> 属性 -> 高级系统设置 -> 高级 -> 环境变量 -> 系统变量 
2、添加系统变量 JAVA_HOME
    
    变量名:JAVA_HOME
    变量值:安装地址
 
3、添加系统变量 CLASSPATH
 
    .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
 
4、在系统变量 PATH 中,添加环境变量
    
    %JAVA_HOME%\bin
    %JAVA_HOME%\jre\bin
 
5、打开 cmd 命令提示符,验证 java 环境是否安装成功
 
    a) java -version

    b) java

    c) javac 
 
注意:在定义classpath环境变量时,如果没有定义环境变量classpath,java启动jvm后,会在当前目录下查找要运行的类文件;如果指定了classpath,那么会在指定的目录下查找要运行的类文件。

名词解释:

        CLASSPATH 环境变量

它是javac编译器的一个环境变量。它的作用与import、package关键字有关。当你写下improt java.util.*时,编译器面对import关键字时,就知道你要引入java.util这个package中的类;但是编译器如何知道你把这个package放在哪里了呢?所以你首先得告诉编译器这个package的所在位置;如何告诉它呢?就是设置CLASSPATH,如果java.util这个package在c:/jdk/ 目录下,你得把c:/jdk/这个路径设置到CLASSPATH中去!当编译器面对import java.util.*这个语句时,它先会查找CLASSPATH所指定的目录,并检视子目录java/util是否存在,然后找出名称吻合的已编译文件(.class文件)。如果没有找到就会报错!CLASSPATH有点像c/c++编译器中的INCLUDE路径的设置哦,是不是?当c/c++编译器遇到include 这样的语句,它是如何运作的?哦,其实道理都差不多!搜索INCLUDE路径,检视文件!当你自己开发一个package时,然后想要用这个package中的类;自然,你也得把这个package所在的目录设置到CLASSPATH中去!CLASSPATH的设定,对JAVA的初学者而言是一件棘手的事。所以Sun让JAVA2的JDK更聪明一些。你会发现,在你安装之后,即使完全没有设定CLASSPATH,你仍然能够编译基本的JAVA程序,并且加以执行。

        PATH 环境变量

PATH环境变量。作用是指定命令搜索路径,在命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好PATH变量后,就可以在任何目录下执行javac/java等工具了。

         javac 

负责的是编译的部分,当执行javac时,会启动java的编译器程序。对指定扩展名的.java文件进行编译。 生成了jvm可以识别的字节码文件。也就是class文件,也就是java的运行程序。

          java 

负责运行的部分,会启动jvm,加载运行时所需的类库,并对class文件进行执行, 一个文件要被执行,必须要有一个执行的起始点,这个起始点就是main函数。

5、环境配置好后,搭建第一个Java程序


1、以记事本等文本编辑器新建 HelloJava.java 文件。
2、加入以下内容
 
   public class HelloJava {
       public static void main(String arg[]){
          System.out.print("hello world");
       }
   }
 
    注意:class 后的名称要与文件名称相同
3、进入当前文件所在目录,打开cmd。
4、执行 javac HelloJava.java 命令进行编译,编译成功后会生产同文件名的.class文件。
5、执行 java HelloJava 命令启动程序。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值