Java千百问_01基本概念(001)_什么是Java

什么是Java

Java是一种开发语言(核心特点:跨平台,面向对象,名称由来看这里:J2EE里面的2是什么意思),对于开发者来讲,Java基本等于Jdk。

Jdk的版本介绍看这里:Java都有那些版本

开发人员一般通过IDE(Eclipse、NetBeans、JBuilder等)编写、编译Java代码(在远古没有IDE的时代,都是用文本编辑器编写,使用javac编译),在这个过程中,会使用到Jdk与第三方Jar包(Jar包即一组编译后的类打成的压缩包,可以使用解压工具解压成文件结构)。
想知道Java能用来干什么吗:Java都能干什么

具体关系图:

其中, Jdk中包含Jre,在Jdk的安装目录下有一个名为jre的目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是Jvm,lib中则是Jvm工作所需要的类库,而Jvm和lib和起来就称为Jre。

1.什么是Jdk

Java Development Kit

是针对Java开发人员的产品,是整个Java的核心。

想要安装Jdk看这里:如何安装和配置Jdk
包括:Java运行环境Jre、Java工具( javac/java/jdb等 )和Java基础类库( Java API,rt.jar等 )。

2.什么是Jre

Java Runtime Environment
是运行Java程序所须环境的集合,包含Jvm标准实现及Java核心类库。
与大家熟知的Jdk不同,Jre是Java运行环境,并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器),只是针对于使用Java程序的用户,只有 通过它,Java的开发者才得以将自己开发的程序发布到用户手中,让用户使用。

运行Java程序一般都要求用户的电脑安装Jre;没有jre,java程序无法运行;而没有java程序,jre就没有用武之地。

包括:虚拟机Jvm,运行类库(runtime class libraries)和启动器(Java application launcher)。

3.什么是Jre

Java Virtual Machine
我们常说的Java虚拟机, 是整个Java实现跨平台最核心的部分,能够运行通过Java语言编写的应用程序。
所有的Java程序会首先被编译为.class的类文件,Jvm虚拟机可以执行这种编译后的类文件,也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释为目标代码(不同操作系统不同),给本地系统执行。
Jvm屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码,就可以在多种平台上不加修改地运行。
只有Jvm还不能成class的执行,因为在解释class的时候Jvm需要调用解释所需要的类库lib,即Jre中的lib类库,单独的Jvm没有任何作用。

原文地址:http://blog.csdn.net/ooppookid/article/details/50887927

时间: 2024-08-31 09:33:32

Java千百问_01基本概念(001)_什么是Java的相关文章

Java千百问_01基本概念(002)_Java都有哪些版本

Java都有那些版本 Java最初由sun公司出品,2009年被orcale公司(即甲骨文)收购,它的版本体系分为两个纬度,纵向和横向. 纵向的版本即为我们常说的Jdk版本,通过近20年的时间,从1996年正式发布1.0版本,发展到2014年的8.0版本. 横向的版本即为我们所说的Java体系,从Java 2.0开始有所区分. 1.什么是Java体系 Java SE(J2SE,Java2 Platform Standard Edition,标准版) Java EE(J2EE,Java 2 Pla

Java千百问_01基本概念(005)_如何安装和配置Jdk

如何安装和配置Jdk 想要安装Java,也就是我们所知的Jdk,需要先去官网下载. 在oracle的Java官网可以下载到任意版本的Jdk,我们可以下载最新版本的安装包(也可以下载绿色版,不过需要自行配置环境变量). 安装之后,我们就可以使用Java开发程序了. 这里要说的是,如果自行配置环境变量,针对不同的操作系统配置方式差异较大. 1.windows如何配置Java环境变量 第一步 右击"我的电脑"→属性→高级系统设置→高级→环境变量→系统变量→新建变量(变量名称:JAVA_HOM

Java千百问_01基本概念(003)_J2EE里面的2是什么意思

J2EE里面的2是什么意思 J2SE,J2SE,J2ME中2的含义要追溯要1998年. 1998年Java 1.2版本发布,1999年发布Java 1.2的标准版,企业版,微型版三个版本,为了区分这三个版本,分别叫做Java2SE,Java2EE,Java2ME,简称J2SE,J2EE,J2ME.故,2的含义为1.2版本. 但是,这种叫法已经在2005年Java 1.6发布后取消,J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME. 所以,现在的J2EE等叫

Java千百问_07JVM架构(001)_java内存模型是什么样的

1.什么是内存模型 Java平台自动集成了线程以及多处理器技术,这种集成程度比Java以前诞生的计算机语言要厉害很多.Java针对多种异构平台的独立性,使得多线程技术也具有了开拓性的一面.  我们有时候在Java开发中,对于同步和线程安全要求很严格的程序时,往往容易混淆的一个概念就是内存模型.那究竟什么是内存模型呢?  内存模型描述了程序中各个变量(实例域.静态域和数组元素)之间的关系,以及在实际计算机系统中将变量存储到内存.从内存中取出变量这样的底层细节.  Java对象最终是存储在内存里面的

[置顶] Java千百问_06数据结构(001)_java中数据类型是什么

1.什么是数据类型 Java语言是静态类型的(statical typed),也就是说所有变量和表达式的类型再编译时就已经完全确定.由于是statical typed,导致Java语言也是强类型(Strong typed)的.  强类型意味着每个变量都具有一种类型,并且每种类型都是严格定义的(当然泛型比较特殊,看这里:泛型是什么),类型限制了变量可以赋哪些值,表达式最终产生什么值.同时限制了这些值可以进行的操作类型以及具体方法.所有的赋值操作,无论是显式的还是在方法调用中通过参数传递,都要进行类

Java千百问_05面向对象(001)_类、对象到底有什么秘密

1.类.对象的概念是什么 Java是目前应用最为广泛的面向对象特的语言,它具有以下基本概念: 类 对象 方法 抽象化 多态性 继承 封装 我们首先看看类和对象的概念. 类 类是一个模版.是一个可以定义一类具有相同属性.行为的模版.  例如:狗是一个类,它具有四肢.尾巴.头.脊椎等属性,具有吠叫.吃.繁殖等行为. 对象 对象是一个具体实例.根据是一个类的具体实例.  例如:我家对门养的一只狗,具体到了某一只. 2.Java如何定义类 类的定义如下︰ public class Dog{ String

Java千百问_04异常处理(001)_什么是java中的异常

1.java异常是什么 java在执行期间产生了某些问题,导致执行中断,这一问题就称为异常. 不同的原因都可能产生异常,包括以下内容:==用户输入无效数据.==需要打开的文件不存在.==网络连接已丢失.==JVM已经耗尽内存.==将null当作某种对象进行操作. 2.异常都分为哪些 要了解在Java中如何异常处理工作,需要了解三类异常:检查异常(checked exception) 检查异常通常是用户错误,程序员并不可预见的问题.例如,如果一个文件被打开,但该文件无法找到,则会出现异常.这些异常

Java千百问_05面向对象(003)_java中抽象概念如何体现的

点击进入_更多_Java千百问 1.抽象是什么 抽象,和具体对立,定义了事物的性质,事物的性质会随着抽象概念的改变而改变. 2.java中的抽象类是什么 Java中最直接抽象概念的应用就是抽象类和接口,这里我们看一下抽象类. 抽象类和普通类一样,是一个模版.相比普通类,抽象类不具备实例化对象的能力.抽象类也可以定义属性和方法,比之普通类,它还可以定义没有实现的方法,即抽象方法.  通常会用一个具体类(子类)继承抽象类(父类),实现抽象类中的抽象方法.父类包含子类的集合的通用功能,但父类本身过于抽

Java千百问_03基本语法(002)_java都有哪些关键字

java都有哪些关键字 首先我们来看看什么是关键字,关键字的含义. 1.java关键字是什么意思 关键字是电脑语言里事先定义的,有特别意义的特殊标识符,又叫保留字. Java的关键字对Java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等等,Java规定关键字不能用作自定义标识符(包括变量名.方法名.类名.包名和参数等等). 2.java都有哪些关键字 目前共有50个Java关键字,如下.其中,"const"和"goto"这两个关键字在Java