java运行机制、Jdk版本及Java环境变量
一、语言特性
计算机高级语言按程序的执行方式可分为:编译型和解释型两种。编译型的语言是指使用专门的编译器,针对特定的平台(操作系统)一次性翻译成被该平台硬件执行的机器码,并包装成该平台可执行性程序文件(.exe,.sh,.bat等),编译型的语言有C、C++等;解释型的语言是指使用专门的解释器对源程序逐行解释成特定平台的机器码并立即执行,可以认为每次执行解释型语言的程序都要进行一次编译。
Java是一种特殊的高级语言,既有解释型语言的特点,也有编译型语言的特点。Java编写的程序需要经过编译步骤,但该步骤不会生成特定平台的机器码,而是生成一个与平台无关的字节码(.class)文件,这种字节码文件不是可执行性的,需要Java解释器来解释执行,也就是Java虚拟机(也叫JVM)。所以Java具有良好的跨平台特性。
二、JDK版本
JDK的全称为Java SE Development Kit,即Java标准开发包,包括Java编译器、Java运行环境,以及常用Java类库。Java运行环境全称为Java Runtime Environment,简称JRE,JRE不仅仅包含JVM、其他运行Java程序的环境支持,还有类加载器、字节码校验器以及大量的基础类库。
JDK1.0版本包含运行环境(JRE)和开发环境,其中JRE包括了核心API、集成API、用户界面API、发布技术、Java虚拟机五部分,开发环境还包括了编译Java程序的编译器(即javac命令);
JDK1.1增加了JIT(即时编译)编译器,将常用的指令保存在内存中,下次调用时就不需要重新编译,提升了JDK的效率;
JDK1.2(Java历史上最重要的JDK版本)发布了JSP/Servlet、EJB等规范,并分成J2EE、J2SE和J2ME三个版本,此外还把它的API分成三类:核心API(所有Java平台都提供)、可选API(因平台不同而不同)、特殊API(用于JCA和JCE的第三方加密类库);
JDK1.4(Java历史上最成熟的版本),大量的开源框架和应用服务器涌现。
JDK1.5改名为JavaSE5.0,J2EE和J2ME也相应改为JavaEE和JavaME,增加了增强的for语句、泛型、可变数目的参数、类型安全的枚举、自动拆箱和装箱等功能,同时也发布了新的企业级平台规范,如:EJB3.0规范、MVC框架JSF。
JDK1.6新增特性:使用JAXB2来实现对象与XML之间的映射、使用Compiler API、轻量级Http Server API、插入式注解处理API、Common Annotations等。
JDK1.7新增特性:switch中可以使用字串、泛型实例化类型自动推断、语法上支持集合、安全的加减乘除、两个char间的equals、Boolean类型反转,空指针安全,参与位运算等。
三、Java环境变量
安装JDK后,需要设置环境变量,其中windows设置:
①新建JAVA_HOME,变量值为: C:\Program Files\Java\jdk1.6.0_10(JDK安装目录)
②新建CLASSPATH,变量值为:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
③新建Path,变量值为:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
java运行机制、Jdk版本及Java环境变量的更多相关文章
- windows10系统修改JDK版本后配置环境变量不生效怎么办
		
之前安装了个jdk8版本,今天突然想安装个更新版本的jdk11来用,但在安装好JDK11并配置环境变量后发现修改JDK版本后配置的环境变量不生效的.本文就给大家分享一下windows10系统修改JDK ...
 - Java入门之JDK的安装和环境变量的配置
		
Java的版本 1. Java SEjava se 以前称为J2SE.它允许开发和部署在桌面.服务器.嵌入式环境和实时环境中使用的 Java 应用程序.Java SE是基础包,但是也包含了支持 Jav ...
 - [java学习笔记]JDK的安装和环境变量的配置
		
1.JDK的下载和安装 jdk(java development kit)是java提供给我们的一套java开发工具,它必运行在JVM(java虚拟机)上,java语言的跨平台性就是利用java运行在 ...
 - java基础(1):java概述、jdk的安装、环境变量的配置、helloworld案例
		
1. Java开发环境搭建 1.1 java概述 众所周知Java是一门编程语言,编程语言就是用来编写软件的.那么使用Java到底能用来编写什么软件呢?你所熟知的很多软件都可以用Java来编写,例如: ...
 - Java基础教程---JDK的安装和环境变量的配置
		
一.Java的安装和环境变量配置 1.Java的安装: 第一步,从Oracle官网下载安装包,当然也可以从其他安全可靠的地方下载(PS:根据不同电脑系统下载相应的安装包,注意电脑的位数.如x64,x3 ...
 - java_Mac安装多个JDK版本并设置环境变量
		
JDK6.JDK7.JDK8三个版本的汇总地址:https://pan.baidu.com/s/1pKSYv8Z 安装 JDK6安装 JDK6下载地址 见网盘 安装完毕后确认版本 JavaForOSX ...
 - 环境变量jdk版本与java -version显示不一致
		
问题描述: 问题产生原因: 1.Path环境变量配置了Oracle 2.C:\windows\System32下,还有java.exe. 问题描述: 今天遇到一个小bug,我电脑环境变量配置的版本是j ...
 - 零基础怎么学Java?Java的运行机制是什么?Java入门基础!
		
Java语言是当前流行的一种程序设计语言,因其安全性.平台无关性.性能优异等特点,受到广大编程爱好者的喜爱. 想学习Java语言的同学对于Java的运行机制是必须要了解的!! 计算机高级语言的类型主要 ...
 - Java JDK的安装以及环境变量的配置
		
安装并配置完Android SDK之后,本想着可以做个简单的APP应用了,只是依然提示我“请确认Java JDK是否安装”类似的报错,于是又进行了Java JDK的安装以及环境变量的配置. 1.下载地 ...
 - java -jdk配置1(环境变量配置)
		
此文转载自:http://www.cnblogs.com/nicholas_f/articles/1494073.html 进行java开发,首先要安装jdk,安装了jdk后还要进行环境变量配置: 1 ...
 
随机推荐
- pig的grunt中shell命令不稳定,能不用尽量不用
			
shell命令:mv a b 将文件a改名为b, 可如果b已经存在,比如/test文件下有a和b两个文件,执行mv a b后,b被覆盖的了.也就是/test文件下只有a. 但是mv命令在pig的g ...
 - VC++读取图像RGB值
			
代码: #include <iostream> #include <fstream> #include <string> #include <windows. ...
 - android:layout_alignleft layout_toleftof区别,详解RelativeLayout布局属性
			
转载请注明博客地址. 最近看博客看到有关于RelativeLayout布局的解释,有的解释很多是错误的.因此有必要对每一个常见的布局属性进行描述.以下解释全部都是逐行进行测试的. 首先把常用的布局分组 ...
 - R12 - Error 'Unable to process your transaction. The operating unit is either invalid or it cannot b
			
In this Document Symptoms Cause Solution Still Have Questions? References APPLIES TO: Orac ...
 - 程序员的软实力武器-smart原则
			
smart对于程序员来说不是仅仅意味一个法则: 面对需求和提出需求时候,smart原则可以极大的提高效率 目标管理是使管理者的工作由被动变为主动的一个很好的管理手段,实施目标管理不仅是为了利于员工更加 ...
 - Android 自定义标题栏
			
开发 Android APP 经常会用到自定义标题栏,而有多级页面的情况下还需要给自定义标题栏传递数据. 本文要点: 自定义标题填充不完整 自定义标题栏返回按钮的点击事件 一.代码 这里先介绍一下流程 ...
 - "《算法导论》之‘排序’":线性时间排序
			
本文参考自一博文与<算法导论>. <算法导论>之前介绍了合并排序.堆排序和快速排序的特点及运行时间.合并排序和堆排序在最坏情况下达到O(nlgn),而快速排序最坏情况下达到O( ...
 - 【LaTeX排版】LaTeX论文排版<二>
			
1.目录的生成 直接使用命令\tableofcontents即可.其默认格式如下: 我们会发现,这样的格式不一定是我们所期望的.比如说,我们也希望章标题与页码之间也有点连线,并且也希望将致谢. ...
 - 【uWSGI】实战之Django配置经验
			
uWSGI 是应用服务器,实现了uwsgi, wsgi等协议,可以运行wsgi 应用 uwsgi 是协议名 Django配置 下面是自己经常用的一个配置模板,基于1.9以上的版本使用的, 主要基于dj ...
 - leetCode(62)-Reverse Integer
			
题目: Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return -321 clic ...