一、java概述
一、概述
java不仅仅是一门编程语言,还是一个由一系列计算机软件和规范形成的技术体系。
提供了完整的开发和跨平台部署的支持环境。用途广泛。
结构严谨、面向对象、摆脱硬件平台的束缚。
相对安全的内存管理和访问机制。
热点代码检测和运行时编译及优化。
......
认识这些技术运作的本质,是思考“程序这样写好不好”的基础和前提。
二、java技术体系
sun官方所定义的包括:java程序设计语言、各种硬件平台上的java虚拟机、class文件格式
、java API类库、来自商业和开源社区的第三方java类库。
广义上将Clojure、JRuby、Groovy等运行与java虚拟机上的语言以及相关的程序都是属于java
技术体系的一员。
JDK(Java Development Kit)是java程序设计语言、虚拟机、Java API类库的统称。是开发的最小环境。
JRE(Java Runtime Environment)是虚拟机、Java SE API的统称,是运行的标准环境。

java技术体系所包含的内容
三、Java发展史
1991.4:Oak(橡树)
1995.5.23:Oak改名为Java,发布1.0版本,包括java虚拟机、Applet、AWT等,
提出“一次编写,到处运行”口号。
1996.4:主要操作系统供应商申明在产品中嵌入java技术,JavaOne大会举行。
1997.2:JDK1.1版本
1998.12:JDK1.2版本
1999.4:HotSpot虚拟机发布,作为JDK1.3以及之后所有版本的Sun JDK默认虚拟机。
2000.5:JDK1.3版本
2002.2:JDK1.4版本,真正走向成熟的一个版本。同年,竞争对手.NET Framework由微软公司发布。
2004.9:JDK1.5版本
2006.12:JDK1.6:版本,终结J2EE\J2SE\J2ME命名方式,启用Java SE 6\Java EE 6\Java ME 6命名方式。
同年JavaOne大会上,Sun公司将Java开源,建立OpenJDK组织对源码进行独立管理。由于一些外部因素,没有
再维持两年一个主版本,一直发布Update版本。
2009.4:Oracle公司收购了Sun公司
2011.7:JDK1.7版本
2014.3:JDK1.8版本
四、Java虚拟机发展史
Sun Classic VM第一款商用Java虚拟机
Exact VM 技术比上面的先进,但是很快被下面的取代
HotSpot VM目前使用最广的Java虚拟机,Java默认的虚拟机。
Sun公司还在移动和嵌入式市场发布过虚拟机,Sun Mobile-Embedded VM
/Meta-Circular VM。
其他公司也研发过不少虚拟机,BEA和IBM就是最著名的。BEA JRockit/ IBM J9 VM。
......等
五、展望Java技术的未来
模块化:是解决应用系统和技术平台越来越复杂、越来越庞大问题的一个重要途径。
混合语言:当单一Java开发已经无法满足当前软件的复杂需求时,越来越多基于
Java虚拟机的语言开发被应用到软件项目中,每种语言都可以针对自己擅长的方面更
好的解决问题。
多核并行:CPU硬件的发展方向已经由高频率转变为多核心,软件开发越来越关注
并行编程的领域。
进一步丰富语法:
64位虚拟机:
一、java概述的更多相关文章
- Java概述
Java概述 一.前奏(常见的DOS命令) dir:列出当前目录下的文件以及文件夹 md:创建目录(文件夹) rd:删除目录 cd:进入指定目录 cd..:退出当前目录,返回到上一级目录 cd\:退回 ...
- 1.1 Java概述上
1.1 Java概述 Java是一种编程语言,它提供了一个同时用于程序开发 应用和部署的环境.Java语言主要定位于网络编程,使得程 序可以最大限度地利用网络资源. 1.2 Java语言的特点 1.跨 ...
- 从java的开始,java概述,java配置环境变量
一.java开发入门 java 概述 Java划分为三个技术平台:JavaSE(标准版,含Java基础类库),JavaEE(企业版,技术平台),JavaME(小型版,小型产品.嵌入式设备) Jav ...
- JAVA基础知识(一)—JAVA概述
JAVA概述 1991 年Sun公司的James Gosling(詹姆斯·高斯林)等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒.PDA等的微处理器: 1994年将Oak语言更名 ...
- D1 java概述
首先扯点别的.在学习知识的过程中非常重要的一点是沟通交流,拿自学java来说绝不是抱着一本Head First Java闷头看.感觉自学入门这一阶段相当于启蒙,绝不能向无头苍蝇一样到处乱撞.java的 ...
- Java概述和项目演示
Java概述和项目演示 1. 软件开发学习方法 多敲 多思考 解决问题 技术文档阅读(中文,英文) 项目文档 多阅读源码 2. 计算机 简称电脑,执行一系列指令的电子设备 3. 硬件组成 输入设备:键 ...
- Java基础(Java概述、环境变量、注释、关键字、标识符、常量)
第1天 Java基础语法 今日内容介绍 u Java开发环境搭建 u HelloWorld案例 u 注释.关键字.标识符 u 数据(数据类型.常量) 第1章 Java开发环境搭建 1.1 Java概述 ...
- 计算机、程序和java概述
1.1 计算机.程序和java概述计算机包括硬件(hardware)软件(software)两部分.硬件包括计算机中看得见的物理部分,软件提供看不见的指令,指令控制硬件并且使得硬件完成特定的任务.一台 ...
- 1.Java概述、安装及环境搭建
1. 前言 1.1 学习方法 1. 学会学习的方法 2. 学会独立解决问题 3. 主动的学习而不是被动的接受 4. 知识的大家的,能力才是自己的 1.2 推荐博客 当代程序员都应该养成写博客.看博客的 ...
- java概述和java环境按照,java开发体验
java概述: Java的发展可以归纳如下的几个阶段. (1)第一阶段(完善期):JDK 1.0 ( 1995年推出)一JDK 1.2 (1998年推出,Java更名为Java 2): (2)第二阶段 ...
随机推荐
- scale.fix.js
无意间在一个网站上看到的,本来是对另一个效果感兴趣的,结果看到这个放开来的js就读了一下. var metas = document.getElementsByTagName('meta'); var ...
- raphael.js 给元素 hover 添加glow() 外发光
用raphael.js 给 svg画布里面添加个元素,嗯就圓好了,男人一般都喜欢圆形的东西,比如xx , xxx , 还有xxx $(document).ready(function() { var ...
- 【LibreOJ】#6396. 「THUPC2018」弗雷兹的玩具商店 / Toyshop 线段树+完全背包
[题目]#6396. 「THUPC2018」弗雷兹的玩具商店 / Toyshop [题意]给定一个长度为n的物品序列,每个物品有价值.不超过m的重量.要求支持以下三种操作:1.物品价值区间加减,2.物 ...
- FPGA学习笔记. 二分频和三分频
二分频和三分频 二分频:将输入频率CLK分为原来的 1/2 . 实现:在每次CLK的上升沿或下降沿将输出翻转. 三分频: 1/3占空比. 实现:可使用上升沿或下降沿计数生成输出.需要一个两位计数器. ...
- Ubuntu GNOME单击任务栏图标最小化设置
在Ubuntu GNOME的发行版中,桌面使用的是GNOME,GNOME可以像Windows那样有一个底部任务栏,在Ubuntu GNOME中它称为 dash to dock,如下图: Windows ...
- docker之安装和管理mongodb
前言 折腾一些使用docker来配置和管理mongodb和mongodb集群. 安装mongodb 从docker网站拉取mongodb镜像 docker search mongo # 选择一个版本 ...
- 一个无锁消息队列引发的血案(五)——RingQueue(中) 休眠的艺术
目录 (一)起因 (二)混合自旋锁 (三)q3.h 与 RingBuffer (四)RingQueue(上) 自旋锁 (五)RingQueue(中) 休眠的艺术 (六)RingQueue(中) 休眠的 ...
- Hibernate 二级缓存疑难点
一级缓存:缓存实体 二级缓存:缓存实体 Hibernate查询缓存缓存的是查询出来的实体的部分属性结果集和实体的ID(注意这里不是实体). Hibernate查询缓存:对List起作用.但是Hiber ...
- Springboot分模块开发详解(2):建立子工程
1.创建base-entity 选中base工程,右键创建一个新的maven工程 自动选择了base这个目录存放子工程 创建后,pom.xml修改成如下内容: <?xml version=&qu ...
- IDEA / WebStorm / PhpStorm 添加jQuery自动提示,自动补全,提醒文档
应该是JetBrains系列IDE通用的方法,网上其他一些方法有的过时了,有的不全 默认情况下没有JQuery补全,按照以下方法添加 1. 打开Settings,Languages & Fra ...