Java基础--简述JRE、JVM、JDK之间的关系与Java基础知识点

来源:互联网 发布:淘宝店保健品不让上架 编辑:程序博客网 时间:2024/05/21 21:49

JDK,JRE,JVM的特点

JDK(Java Development Kit)是针对Java开发员的产品,是整个Java的核心,包括了Java运行环境JRE、Java工具和Java基础类库。

Java Runtime Environment(JRE)是运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。


JVM是Java Virtual Machine(Java虚拟机)的缩写,是整个java实现跨平台的最核心的部分,能够运行以Java语言写作的软件程序。

 

JDK(Java Development Kit)

  JDK是Java开发工具包,是Sun Microsystems针对Java开发员的产品。

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

  JDK是整个JAVA的核心,包括了Java运行环境JRE(Java Runtime Envirnment)、一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。

  ①SE(J2SE),standard edition,标准版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE。

  ②EE(J2EE),enterprise edition,企业版,使用这种JDK开发J2EE应用程序,从JDK 5.0开始,改名为Java EE。

  ③ME(J2ME),micro edition,主要用于移动设备、嵌入式设备上的java应用程序,从JDK 5.0开始,改名为Java ME。

 

  金字塔结构 JDK=JRE+JVM+其它 运行Java程序一般都要求用户的电脑安装JRE环境(Java Runtime Environment);没有jre,java程序无法运行;而没有java程序,jre就没有用武之地。

 

Java Runtime Environment(JRE)

  是运行基于Java语言编写的程序所不可缺少的运行环境。也是通过它,Java的开发者才得以将自己开发的程序发布到用户手中,让用户使用。

  RE中包含了Java virtual machine(JVM),runtime class libraries和Java application launcher,这些是运行Java程序的必要组件。

  与大家熟知的JDK不同,JRE是Java运行环境,并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器),只是针对于使用Java程序的用户。

 

 

JVM(java virtual machine)

  就是我们常说的java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行。

  也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系统执行。

  只有JVM还不能成class的执行,因为在解释class的时候JVM需要调用解释所需要的类库lib,而jre包含lib类库。

  JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。

 

环境变量的配置pathclasspath以及作用

运行路径path变量记录的是各个程序所在的路径,系统根据这个变量的值来查找运行程序(各种命令),使得在运行的时候不用输入全路径名。

     类路径classpath环境变量通常用来记录当前路径和java类库所在的路径。在类库中包含java系统所提供的各种软件包,其中包括各个类和接口等

 

java关键字

Abstract 抽象的 
一个Java语言中的关键字,用在类的声明中来指明一个类是不能被实例化的,但是可以被其它类继承。一个抽象类可以使用抽象方法,抽象方法不需要实现,但是需要在子类中被实现


break 
一个Java的关键字,用来改变程序执行流程,立刻从当前语句的下一句开始执行从。如果后面跟有一个标签,则从标签对应的地方开始执行


case 
Java语言的关键字,用来定义一组分支选择,如果某个值和switch中给出的值一样,就会从该分支开始执行。


catch 
Java的一个关键字,用来声明当try语句块中发生运行时错误或非运行时异常时运行的一个块。


char 
Java语言的一个关键字,用来定义一个字符类型 

continue 
一个Java的关键字,用来打断当前循环过程,从当前循环的最后重新开始执行,如果后面跟有一个标签,则从标签对应的地方开始执行。


do 
一个Java语言的关键字,用来声明一个循环,这个循环的结束条件可以通过while关键字设置


double 
一个Java语言的关键字,用来定义一个double类型的变量


else 
一个Java语言的关键字,如果if语句的条件不满足就会执行该语句。


final 
一个Java语言的关键字。你只能定义一个实体一次,以后不能改变它或继承它。更严格的讲:一个final修饰的类不能被子类化,一个final修饰的方法不能被重写,一个final修饰的变量不能改变其初始值。


finally 
一个Java语言的关键字,用来执行一段代码不管在前面定义的try语句中是否有异常或运行时错误发生。


float 
一个Java语言的关键字,用来定义一个浮点数变量


for 
一个Java语言的关键字,用来声明一个循环。程序员可以指定要循环的语句,推出条件和初始化变量。


if 
Java编程语言的一个关键字,用来生成一个条件测试,如果条件为真,就执行if下的语句。


implements 
Java(TM)编程语言的一个关键字,在类的声明中是可选的,用来指明当前类实现的接口。


import 
Java(TM)编程语言的一个关键字,在源文件的开始部分指明后面将要引用的一个类或整个包,这样就不必在使用的时候加上包的名字。


instanceof 
一个二操作数的Java(TM)语言关键字,用来测试第一个参数的运行时类型是否和第二个参数兼容。


int 
Java(TM)的一个关键字,用来定义一个整形变量

interface
Java(TM)的一个关键字,用来定义一系列的方法和常量。它可以被类实现,通过implements关键字。


long 
Java语言的一个关键字,用来定义一个long类型的变量。


private 
Java语言的一个关键字,用在方法或变量的声中。它表示这个方法或变量只能被这个类的其它元素所访问。


protected 
Java语言的一个关键字,在方法和变量的声明中使用,它表示这个方法或变量只能被同一个类中的,子类中的或者同一个包中的类中的元素所访问

。 
public 
Java语言的一个关键字,在方法和变量的声明中使用,它表示这个方法或变量能够被其它类中的元素访问。


return 
Java语言的一个关键字,用来结束一个方法的执行。它后面可以跟一个方法声明中要求的值。


short 
Java语言的关键字,用来定义一个short类型的变量。


static 
Java语言的关键字,用来定义一个变量为类变量。类只维护一个类变量的拷贝,不管该类当前有多少个实例。"static" 同样能够用来定义一个方法为类方法。类方法通过类名调用而不是特定的实例,并且只能操作类变量。 

this 
Java语言的关键字,用来代表它出现的类的一个实例。this可以用来访问类变量和类方法。


throw 
Java语言的关键字,允许用户抛出一个exception对象或者任何实现throwable的对象


throws 
Java语言的关键字,用在方法的声明中来说明哪些异常这个方法是不处理的,而是提交到程序的更高一层。 

transient 
Java语言的关键字,用来表示一个域不是该对象串行化的一部分。当一个对象被串行化的时候,transient型变量的值不包括在串行化的表示中,然而非transient型的变量是被包括进去的。


try 
Java语言的关键字,用来定义一个可能抛出异常语句块。如果一个异常被抛出,一个可选的catch语句块会处理try语句块中抛出的异常。同时,一个finally语句块会被执行,无论一个异常是否被抛出。 

void 
Java语言的关键字,用在Java语言的方法声明中说明这个方法没有任何返回值。"void"也可以用来表示一句没有任何功能的语句。


volatile 
Java语言的关键字,用在变量的声明中表示这个变量是被同时运行的几个线程异步修改的。 

while 
Java语言的一个关键字,用来定义一段反复执行的循环语句。循环的退出条件是while语句的一部分。 

关于breakcontinue。 
continue 语句与break语句相关,但较少用到。continue语句用于使其所在的forwhiledo-while语句开始下一次循环。在while与 do-while语句中,continue语句的执行意味着立即执行测试部分;在for循环语句中,continue语句的执行则意味着使控制传递到增量 部分。 


访问控制:
private 私有的
protected 受保护的
public 公共的


类、方法和变量修饰符

abstract 声明抽象
class 
extends 扩允,继承
final 终极,不可改变的
implements实现
interface 接口
native 本地
new ,创建
static 静态
strictfp 严格,精准
synchronized 线程,同步
transient 短暂
volatile 易失


程序控制语

break 跳出循环
continue 继续
return 返回
do 运行
while 循环
if 如果
else 反之
for 循环
instanceof 实例
switch 开关
case 返回开关里的结果
default 默认


错误处理

catch 处理异常
finally 有没有异常都执行
throw 抛出一个异常对象
throws 声明一个异常可能被抛出
try 捕获异常

包相关
import 引入
package 


基本类型

boolean 布尔型
byte 字节型
char 字符型
double 双精度,
float 浮点
int 整型
long 长整型
short 短整型


变量引用

super 父类,超类
this 本类
void 无返回值2.2  标识符

在程序中自定义的一些名称。

26个英文字母大小写,数字:0-9 符号:_ $ 组成

定义合法标识符规则:

1,数字不可以开头。

2,不可以使用关键字。

Java中严格区分大小写。

注意:在起名字的时,为了提高阅读性,要尽量有意

义。

 

 

 

 

 

0 0