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 ...
随机推荐
- C++对象模型(五):The Semantics of Data Data语义学
本文是<Inside the C++ Object Model>第三章的读书笔记.主要讨论C++ data member的内存布局.这里的data member 包含了class有虚函数时 ...
- Ajax 初步学习总结
Ajax是什么 Ajax是(Asynchronous JavaScript And XML)是异步的JavaScript和xml.也就是异步请求更新技术.Ajax是一种对现有技术的一种新的应用,不是一 ...
- hadoop学习视频
杨尚川的视频 http://www.tudou.com/plcover/EvJCo2zl9hQ/ 酷6视频 http://v.ku6.com/show/8PkgqGcarHKndyP3rl_pUw.. ...
- 重装Windows后修复Linux引导
装了双系统(Windows和Linux)的机器重新安装Windows后会导致Linux的引导丢失而无法进入原先的Linux系统[其原因是Windows会覆盖原先MBR中的Linux的BootLoade ...
- Git与远程reposiory的相关命令
问题1:Git如何同步远程repository的分支(branch) 某天,小C同学问我,为啥VV.git仓库里面本来已经删除了branchA这个分支,但是我的mirror中还是有这个分支呢? 分析: ...
- OAF隐藏显示题头
当一个页面的内容较多时,我们需要将内容进行分组显示.这个时候我们就需要用到隐藏显示. 本文将介绍如何使用OAF的隐藏显示题头功能 一.新建AM 在test.oracle.apps.cux上点右键,选择 ...
- 加载SpriteBuilder中的scene为何不能带后缀
我们在Xcode中切换SpriteBuilder中的scene时,一般使用的是如下代码: -(void)exitButtonPressed:(CCControl*)sender{ CCLOG(@&qu ...
- MySql常用操作语句(2:数据库、表管理以及数据操作)
本文主要内容转自一博文. 另外可供参考资源: SQL语句教程 SQL语法 1.数据库(database)管理 1.1 create 创建数据库 mysql> create database f ...
- android应用资源预编译,编译和打包全解析
我们知道,在一个APK文件中,除了有代码文件之外,还有很多资源文件.这些资源文件是通过Android资源打包工具aapt(Android Asset Package Tool)打包到APK文件里面的. ...
- CentOS 6.5安装MongoDB 2.6(多yum数据源)
下面我们在CentOS 6.5 x64系统上安装最新的MongoDB 2.6.5版. 在MongoDB v2.6.5版的软件仓库一共有五个包: 1)mongodb-org此包是元数据包,它可以实现自动 ...