• JAVA版本介绍


    一、Java语言的发展:

    JDK 1.0(1996)
    JDK 1.1(1997)
    J2SE 1.2(1998)
    J2SE 1.3(2000)
    J2SE 1.4 (2002)
    J2SE 5.0 (2004)
    Java SE 6 (2006) ————2009年sun公司被Oracle公司收购
    Java SE 7 (2011)
    Java SE 8 (2014)
    Java SE 9 (2017)
    Java SE 10 (2018)

    二、Java语言版本:

    1、JDK(oracle) VS OpenJDK

    2009年sun公司被Oracle公司收购之前,将JDK源代码开源,形成了OpenJDK。但是,sun公司在开源时,有一小部分(非核心功能)因为产权原因,无法完全开源,就被其他具有相同功能的代码开源。

    OpenJDK中只包含JDK中最核心的,还有其他一些第三方实现的功能、插件。OpenJDK被称为极简版的JDK。


    关于OpenJdk和Jdk它的源代码是有关系的:包含在OpenJdk源代码中的绝大部分代码和oralce Jdk 一模一样

    jdk就可以理解为openJdk的一个分支:不仅大家的代码是相同的,而且,oracle Jdk还会和OpenJdk保持同步
    同时,一旦oracle jdk一旦发现open Jdk中的一些bug,oracle在修复之后,把这些修复bug的代码

    IBM,Google,FaceBook RedHat都从OpenJdk中,拿到源代码,然后,经过修改,增加 形成自己的JDK版本。阿里巴巴 DragonWell

    2、 我们这4个月课程中,都是JDK8,原因如下:

    (1)、直到今天,国内绝大部分公司,所使用的JDK版本仍然是JDK8

    (2)、商业公司——求稳(原因)

        LTS(长期支持维护版本)——维护周期长,至少3年稳定

        短期支持维护版本——维护周期短,半年左右,不稳定

    (3)、从JDK9开始,每半年发布一次,在这些迭代版本中,长期支持版本如下:

    JDK8——>JDK11(2018年发布)—— >JDK17

    三、JAVA语言平台版本

    Java分三个版本:JavaSE(标准版)、JavaEE(企业版)、JavaME(微型版)

    其中SE就是大家学的Java基础,EE是公司最常用的用于网站开发(PC端),ME用于移动端开发,现在熟悉的安卓系统就是用JAVAME开发的。

    Java既可以被编译,也可以被解释。通过编译器,可以把Java程序翻译成一种中间代码-称为字节码-可以被Java解释器解释的独立于平台的代码。通过解释器,每条Java字节指令被分析,然后在计算机上运行。只需编译一次,程序运行时解释执行。

    Java不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性

    或者用一种更总结性的话术来表达就是:java跨平台就是能在不同的环境(主要是操作系统)上运行java程序!

    这也是Java为什么这么火,为什么这么多年依然屹立不倒且久盛而不衰的原因。一个无视于平台,跨平台的语言,必然有长久的生命力。而作为程序员来说,职业发展的长远规划,选择Java远比选择其他无法实现跨平台的语言,更有长远价值!

    总结为三点:

    JavaSE是做电脑上运行的软件。

    JavaEE是用来做网站的-(我们常见的JSP技术)

    JavaME是做手机软件的。

    四、Java语言的特点

    高级语言计算机本身是不认识的,计算机只认识机器语言(二进制 0 1)

    一定有一个工具,帮助我们将我们的程序,转化为计算机可以识别的对应到机器指令级别的二进制序列

    1、 编译型语言:用这种语言写出的代码,首先通过编译器的编译,全部转化成目标代码(二进制可执行文件 .exe),
    然后依次在操作系统中执行

    2、 解释型语言:转化一句,执行一句

    java语言是解释型:.java源代码(编译)——>.class——>

    3、特点:

    跨平台——一次编译,多次运行

    面向对象——解释型

    健壮——异常机制

    动态——动态加载

    分布式——高效

     多线程       结构中立(字节码)

    开源——OpenJDK

    4、Java语言的跨平台性

    (1)、通过Java语言编写的应用程序在不同的系统平台上都可以运行

    (2)、实现原理:Java程序是在Java虚拟机上运行的,而非在操作系统上运行

    今日事,今日毕。
  • 相关阅读:
    ES数据导入导出
    python Elasticsearch5.x使用
    http://elasticsearch-py.readthedocs.io/en/master/api.html
    Python Elasticsearch api
    es批量索引
    Razor字符串处理
    [.NET] ConfuserEx脱壳工具打包
    查看网页源码的时候找不到数据绑定
    HearthBuddy decompile
    Quickstart: Create and publish a package using Visual Studio (.NET Framework, Windows)
  • 原文地址:https://www.cnblogs.com/lcpp/p/13033054.html
Copyright © 2020-2023  润新知