1 认识一下Java
你知道Java是谁发明的吗?那就是曾经辉煌的Sun公司,现在它已经被Oracle甲骨文公司收购。
Java经过20多年的发展,在各个方面已经十分成熟,并在各个领域都大显身手。
Java广受大企业单位和程序员的追捧和喜爱。根据TIOBE公布的历年编程语言排行榜,Java一直是王者,经常和C系列编程语言一起霸占前三名。
数据来自:https://www.tiobe.com/tiobe-index/
备注:编程工具包JDK,Java Development Kit,是Java开发时必备的工具,有非常丰富的功能。
同年,1995年5月23日,Sun公司在Sun world会议上正式发布Java。
- Java的版本发展
1996年1月,Sun公司发布了Java的第一个开发工具包JDK 1.0,这是Java发展历程中的重要里程碑,标志着Java成为一种独立的开发工具,开发者可以在JDK的基础上开发自己想要的功能。
Java语言的版本迭代,是以封装成JDK进行整体迭代发布的,JDK包括Java语言本身和已经实现的众多功能接口,这些接口是供开发人员使用的。
随后Java进入快速发展,1997年发布JDK1.1,1998年发布JDK1.2,2000年发布JDK1.3,2002年发布JDK1.4。
2004年,Sun公司对JDK进行了大更新,发布了JDK5,2006年发布了JDK6。
2009年甲骨文公司收购了Sun公司。
2011年发布了JDK7,2014年发布了JDK8。JDK8是目前企业使用最广泛的版本。
而2017年9月的JDK9和2018年3月的JDK10是属于过度性的版本。截止到2021年5月,最新版本是Java16。
Green项目小组成员詹姆斯·高斯林博士(James Gosling)是Java编程语言的共同创始人之一,一般公认他为“Java之父”。
- Java的三个版本
Java具有三个版本,分别是Java SE、Java EE、Java ME。
Java SE,Java Platform Standard Edition,标准版,是为开发普通桌面和商务应用程序提供的解决方案版本。Java SE是三个版本中核心的部分,Java EE和Java ME都是从 Java SE的基础上发展而来的。
Java EE,Java Platform Enterprise Edition,企业版,是为开发企业级应用程序提供的解决方案版本,定位在服务器端的应用。主要包括 Servlet、JSP、 JavaBean、JDBC、EJB、Web等技术。
Java ME, Java Platform Micro Edition,微型版,是为开发电子消费产品和嵌入式设备提供的解决方案版本。主要为家用电器增加智能化控制和联网功能,为手机增加新的游戏和通讯录管理功能。此外,JavaME提供了HTTP等高级Internet协议,使移动电话能以Client/Server方式直接访问 Internet的全部信息,提供最高效率的无线交流。
图片来自:https://docs.oracle.com/javase/8/docs/
JRE、Java开发工具、基础类库组成了JDK(Java Development Kit,Java的软件开发工具包),JDK是给开发者使用的,也是我们学习研究Java经常接触的。
Java具有Java SE、Java EE、Java ME三个版本,我们学习以Java EE为主。
JRE是Java运行时环境,JDK是面向开发者的Java的软件开发工具包。
思考三:既然最新的JDK版本是16,那为何JDK8在目前企业中使用的最广泛?
作业一:常用的开发Java语言的软件平台IDE(集成开发环境)有哪些?
1 认识一下Java相关推荐
- springboot实现SSE服务端主动向客户端推送数据,java服务端向客户端推送数据,kotlin模拟客户端向服务端推送数据
SSE服务端推送 服务器向浏览器推送信息,除了 WebSocket,还有一种方法:Server-Sent Events(以下简称 SSE).本文介绍它的用法. 在很多业务场景中,会涉及到服务端向客户端 ...
- Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几
Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几 //获得入参的日期 Calendar cd = Calendar.getInstance(); cd.setTime(date ...
- 在k8s中使用gradle构建java web项目镜像Dockerfile
在k8s中使用gradle构建java web项目镜像Dockerfile FROM gradle:6-jdk8 AS build COPY --chown=gradle:gradle . /home ...
- Java | kotlin 手动注入bean,解决lateinit property loginService has not been initialized异常
kotlin.UninitializedPropertyAccessException: lateinit property loginService has not been initialized ...
- SpringBoot项目使用nacos,kotlin使用nacos,java项目使用nacos,gradle项目使用nacos,maven项目使用nacos
SpringBoot项目使用nacos kotlin demo见Gitte 一.引入依赖 提示:这里推荐使用2.2.3版本,springboot与nacos的依赖需要版本相同,否则会报错. maven ...
- OpenAPI使用(swagger3),Kotlin使用swagger3,Java使用swagger3,gradle、Maven使用swagger3
OpenAPI使用(swagger3) demo见Gitte 一.背景及名词解释 OpenAPI是规范的正式名称.规范的开发工作于2015年启动,当时SmartBear(负责Swagger工具开发的公 ...
- Gradle错误提示:Java home supplied via ‘xxx.xxx.xxx‘ is invalid
Gradle错误提示:Java home supplied via 'org.gradle.java.home' is invalid 描述:在使用idea采用gradle进行依赖的管理功能,当想切换 ...
- 查看Hotspot源码,查看java各个版本源码的网站,如何查看jdk源码
java开发必知必会之看源码,而看源码的第一步则是找到源码
- java基本类型转换,随记
java基本类型转换: double double 转 long double random = Math.round(Math.random()*10000); long l = new Doubl ...
- 科学处理java.lang.StackOverflowError: null异常
java.lang.StackOverflowError: null异常处理 在项目运行中出现StackOverflowError 首先要检查在编码中是否有明显的递归编码,比如死循环或者无限循环调用. ...
最新文章
- solaris 操作总结
- linux ant安装jar,ant打JAR、WAR包
- 三分钟破解无线网——无线网络安全攻防
- java同时执行同一个方法吗_java 返回结果的同时执行另一个方法
- 【BZOJ1485】[HNOI2009]有趣的数列(组合数学)
- Spark创建DataFrame的三种方法
- Git 分布式版本控制常用命令(1)
- 《Oracle大型数据库在AIX UNIX上的实战详解》的集中答疑九 数据库字符集与国家语言...
- 请问:如何实现文件日志功能?要求每天换一个文件。文件名以日期区分
- java setsolinger_java socket 的参数选项解读(转)
- java jni helloword_JNI学习一:编写HelloWorld程序
- 单片机8×8点阵显示简单汉字的程序_干货 | 浅析单片机制作贪吃蛇游戏
- 5分钟学会Markdown语法,在GitHub上写出漂亮文本,提升别人阅读体验
- centos6下安装git
- python是干什么用的-python是做什么用的 python有什么用 - 驱动管家
- 一个实例明白AutoResetEvent和 ManulResetEvent的用法
- Uiautomator入门(初学者用)
- php lwm2m,理解COAP/LWM2M/MQTT协议和TCP/UDP协议的关系
- 10、(十)外汇交易中专有名词整理
- These songs can cheer you up when life gets hard