Java是一门什么样的语言?

2023-11-02

Java是一门高级编程语言

java 原名OKA(橡树),由Sun公司从1991到1995年之间研发,由于OKA被注册,后更改未JAVA。

1995年,Oka 正式更名为java
1996年,Sun正式发布 第一个 java 开发者工具包(JDK 1.0),这是Java发展历程中的重要里程碑,标志着Java成为一种独立的开发工具。
1997年,JDK 1.1面世
1998年,第二代Java平台的企业版J2EE发布。
1999年,Sun公司发布了第二代Java平台的3个版本:J2ME(Java2平台的微型版),应用于移动、无线及有限资源的环境;J2SE(Java 2平台的标准版),应用于桌面环境;J2EE(Java 2平台的企业版),应用于基于Java的应用服务器。Java 2平台的发布,是Java发展过程中最重要的一个里程碑,标志着Java的应用开始普及。
1999年,HotSpot虚拟机发布。HotSpot虚拟机发布时是作为JDK 1.2的附加程序提供的,后来它成为了JDK 1.3及之后所有版本的Sun JDK的默认虚拟机 。
2000年,JDK1.3、JDK1.4和J2SE1.3相继发布。
2001年,J2EE1.3发布。
2002年,J2SE1.4发布。自此Java的计算能力有了大幅提升,与J2SE1.3相比,其多了近62%的类和接口。在这些新特性当中,还提供了广泛的XML支持、安全套接字(Socket)支持(通过SSL与TLS协议)、全新的I/OAPI、正则表达式、日志与断言。
2004年,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE 1.5更名为Java SE 5.0(内部版本号1.5.0),代号为“Tiger”,Tiger包含了从1996年发布1.0版本以来的最重大的更新,其中包括泛型支持、基本类型的自动装箱、改进的循环、枚举类型、格式化I/O及可变参数。
2005年,Sun公司发布了Java SE 6。此时,Java的各种版本已经更名,已取消其中的数字2,如J2EE更名为JavaEE,J2SE更名为JavaSE,J2ME更名为JavaME。
2006年11月13日,Java技术的发明者Sun公司宣布,将Java技术作为免费软件对外发布。Sun公司正式发布的有关Java平台标准版的第一批源代码,以及Java迷你版的可执行源代码。从2007年3月起,全世界所有的开发人员均可对Java源代码进行修改 。
2009年,甲骨文公司宣布收购Sun 。
2010年,Java编程语言的共同创始人之一詹姆斯·高斯林从Oracle公司辞职。2011年,甲骨文公司举行了全球性的活动,以庆祝Java7的推出,随后Java7正式发布。
2014年,甲骨文公司发布了Java8正式版 。
2017 年,Java 9正式发布,带来了很多新特性,其中最主要的变化是已经实现的模块化系统。
从 2018 年开始, 每6个月就会发布一个 Java 版本, 以更快地引入新特性。这里又分为 LTS 版和最新版。 生产环境中最好只使用 LTS 版本, 因为这个版本更加稳定, 维护周期更长。
2018 年 3 月 21 日, Java 10 发布。
2018 年 9 月 25 日, Java 11 LTS 发布。
2019 年 2 月 Java 12 发布
2019 年 9 月 Java 13 发布
2020 年 3 月 17 日,Java 14 发布。
2020 年 9 月 15 日,Java 15 发布。
2021 年 3 月 16 日,Java SE 16 发布。
2021 年 9 月 14 日,Java SE 17 LTS 发布。
这个是继 Java 11 之后的有一个长期支持版本, 并且直接支持到了 2029 年 9 月。这可能是下一个 Java 8。所以学习的话, 可以直接学习这个版本。当然也可以直接学习 Java 17 这样的话, 对于工作来说 3 年之内不会有大的变化。
在当今时代互联网和智能手机已经成为艺术生活中不可或缺的一部分,我们几乎所有的日常任务都使用手机,以前在商场购物、银行排队、旅行社预定旅行,但是现在我们可以在舒适的家中完成这一切。

Java是一种面向对象的编程语言,可用于internet上的分布式环境,他也是易于阅读和理解的高级语言,Java广泛用于控制台,GUI、WEB、移动应用程序、游戏开发以及制作嵌入式系统,除此之外Java还用于设备开发软件,他不仅用于电脑和手机,甚至还用于电视、空调、洗衣机等电子设备,由于Java在线表格,让银行和购物成为可能,Java是由James Gosling 和San microsystems于1991年发明的一种基于计算机的编程语言。

Java三个版本

标准版JavaSE这个版本允许开发和部署在桌面、服务器和嵌入式环境和实施环境中使用的Java应用程序,JavaSE包含支持Java web服务开发的类,并为JavaEE提供基础,如Java语言基础JDBC操作,I/O操作,网络通信以多线程等技术,其次由企业版本JavaEE这个版本是在JavaSE基础上构建的,它提供web服务组建模型,管理和通信API可以使用类实现企业级的面向服务体系结构,最后我们有微型版JavaME这个版本是在移动设备和嵌入式设备上运行的应用程序,(Java Virtual Machice)JVM虚拟机提供一个健壮且灵活的环境。

Java是一门面向对象的编程语言,基于C和C++语言,然而它被改进和简化,已解决编程Java文件中的错误,使用编译器转换为字节码格式,然后Java解释器执行,整个Java代码运行在Java虚拟机上,现在Java中的主要概念是他的方法和类,方法是仅在调用的时才执行任务的代码块。

Java中的一组方法构成一个类,类用于组织代码。

Java语法简单,容易理解和学习,Java语言是健壮的,它消除了C和C++语言中的发生的错误。

Java具有垃圾收集器和异常处理等功能。

Java最流行的特性是它是跨平台的。

Java可以在任何机器上运行,它是一种非常安全的语言,因为它不包含病毒。

Java具有多线程的特性,多线程的特性有助于Java进行多任务处理,Java是一种可移植语言,因为它可以在任何平台运行并且数据类型大小是永久设置的,Java没有C和C++快但是提供了比其他语言更高的性能。

Java4个重要概念:

在Java中我们使用与现实世界相关的对象和类使代码更容易编写和理解。

Abstraction  抽象

抽象意味着显示任务所需的相关信息。

Encapsucation   封装

封装使Java代码安全,数据存储在类中数据不易被访问,下一个特性是继承。

Inheritance    继承

顾名思义一个类的属性和特性可以被另一个类继承,因此用户可以花费更少的时间来创建代码,最后我们有多态性。

Polymorphism  多态

这意味着对不同的任务,使用相同的方法即使他们的任务有所不同,但是可以在两个不同的地方使用相同的对象和变量。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java是一门什么样的语言? 的相关文章

随机推荐

  • 【六】Python全栈之路--for循环

    文章目录 1 双向循环的练习 2 break pass continue的使用 3 for循环 4 小练习 1 双向循环的练习 1 用两个循环完成十行十列的小星星 j 0 while j lt 10 打印星星 i 0 while i lt
  • [MAE]Masked Autoencoders掩膜自编码器

    目录 非对称的编码 解码架构 方法 流程 编码器 解码器 Partial Fine tuning 图像MAE MixMIM Uniform Masking HiViT 视频MAE VideoMAE 多模态MAE M3AE https git
  • v-model支input父子组件传值

    v model用于表单数据的双向绑定 其实它就是一个语法糖 这个背后就做了两个操作 v bind绑定一个value属性 v on指令给当前元素绑定input事件 自定义组件使用v model 应该有以下操作 接收一个value prop 触
  • 线程获取锁的顺序java_多线程(五) java的线程锁

    在多线程中 每个线程的执行顺序 是无法预测不可控制的 那么在对数据进行读写的时候便存在由于读写顺序多乱而造成数据混乱错误的可能性 那么如何控制 每个线程对于数据的读写顺序呢 这里就涉及到线程锁 什么是线程锁 使用锁的目的是什么 先看一个例子
  • Linux进程替换

    目录 进程替换 1 定义 2 为什么要进行进程替换 3 怎样进行进程程序替换 4 进程替换的原理 原理总结 5 Linux进程替换的函数 5 1参数 5 2函数返回值问题 5 3 execl函数用例 5 3 2升级案例 编辑 5 3 3调用
  • MySQL的DQL查询语句

    DQL 查询语句 1 排序查询 语法 order by 子句 order by 排序字段1 排序字段2 排序方式 ASC 升序 磨人的 DESC 降序 注意 如果有多个排序条件 则当前面的条件一致时 才会判断第二条件 2 聚合函数 将一列数
  • INS/GNSS组合导航(二)-INS常用的坐标系统及转换

    一 常用坐标系 由于INS是一种完全自主的导航系统 不与外界发生联系 但是我们又想知道物体的的位置 尤其是其与GNSS组合时需要知道其与GNSS在同一坐标系下的位置信息 这就牵扯到了INS的几个导航系统之间的转换 笼统的讲 INS输出的是载
  • springcloud整合consul

    搭建consul环境 linux安装consul 搭建生产者 1 建module provider payment8006 2 写pom
  • electron自动更新

    1 主进程background js引入autoUpdater let autoUpdater require electron updater 2 主进程写入更新代码 if process env WEBPACK DEV SERVER U
  • 图形学实验五曲线生成算法

    实验五 曲线生成算法 实验类型 设计型 实验学时 2实验要求 必修 一 实验目的 了解曲线的生成原理 掌握几种常见的曲线生成算法 利用VC OpenGL实现Bezier曲线生成算法 二 实验内容 1 分析空间曲线生成算法的原理 绘制其程序流
  • 2017年全国大学生电子设计竞赛综合测评题目解析——Multisim仿真

    2017年综合测评仿真电路讲解 题目和结果链接 常用电路Multisim仿真 方波 三角波振荡电路 常用电路Multisim仿真 有源低通滤波器设计 常用电路Multisim仿真 数字芯片74LS74构建分频器设计 常用电路Multisim
  • python 主力资金_真正的主力进场加仓指标源码

    import numpy as np def initialize context g up price 向上碎形最高价 g low price 向下碎形最低价 g up fractal exists 判断有效向上碎形 g down fra
  • Mybatis-Plus学习---(五)灵活使用wapper条件构造器

    手都敲麻了 翻译自官方 条件构造器 说明 以下出现的第一个入参boolean condition表示该条件是否加入最后生成的sql中 例如 query like StringUtils isNotBlank name Entity getN
  • Linux 安装 MariaDB

    CentOS 7 自带的 MariaDB 是 5 5 版本的 使用 yum install mariadb server 命令安装的默认版本是 5 5 的 这是因为系统默认源只有 5 5 的版本 安装准备 检查是否安装过 MariaDB 或
  • MapInfo数据格式

    MapInfo采用双数据库存储模式 即其空间数据与属性数据是分开来存储的 属性数据存储在关系数据库的若干属性表中 而空间数据则以MapInfo的自定义格式保存于若干文件中 二者通过一定的索引机制联系起来 为了提高查询和处理效率 MapInf
  • Octave Convolution[论文详解]

    Drop an Octave Reducing Spatial Redundancy in Convolutional Neural Networks with Octave Convolution github 传统的卷积运算 要成为过去
  • 利用 Transformer 网络建立预测模型

    引言 我最近读了一篇非常有趣的论文 Deep Transformer Models for Time Series Forecasting The Influenza Prevalence Case 我认为这可能是一个有趣的项目 从零开始实
  • 【stm32】串口通信

    串口通信 一 串口通信协议原理 二 usart功能框图 三 stm32库的配置 一 串口通信协议原理 串口在嵌入式系统当中是一类重要的数据通信接口 其本质功能是作为 CPU 和串行设备间的编码转换器 当数据从 CPU 经过串行端口发送出去时
  • 基于PIO把带有数据和图片的excel表导入到数据库中(图片存储到服务器中,可访问图片路径存入在数据库中)

    基于PIO把带有数据和图片的excel表导入到数据库中 图片存储到服务器中 可访问图片路径存入在数据库中 文章目录 基于PIO把带有数据和图片的excel表导入到数据库中 图片存储到服务器中 可访问图片路径存入在数据库中 前言 创作来之不易
  • Java是一门什么样的语言?

    Java是一门高级编程语言 java 原名OKA 橡树 由Sun公司从1991到1995年之间研发 由于OKA被注册 后更改未JAVA 1995年 Oka 正式更名为java 1996年 Sun正式发布 第一个 java 开发者工具包 JD