1-Java概述(特点、JDK、JRE、JVM)

本文介绍了Java的重要特点,如面向对象、健壮性、跨平台性,以及JDK、JRE和JVM的构成与关系。讲解了Java开发环境、运行环境和核心机制,以及Java运行流程,包括编译、内存模型和运行流程。同时提到了编译时可能出现的乱码问题。
摘要由CSDN通过智能技术生成

一、Java的重要特点

1. 面向对象(OOP)

2. 健壮性:强类型机制、异常处理、垃圾的自动收集等

3. 跨平台性:因为有了JVM,一个编译好的.class文件可以在多个系统下运行(Windows、linux、MAC)

4. 解释型语言:Java、JavaScript、PHP,编译后的代码,不能直接被机器执行,需要解释器来执行(.java——>.class);编译型语言:C、C++,编译后的代码, 可以直接被机器执行。

5. 严格区分大小写

6. 一个源文件最多只有一个public类,其他类个数不限。若源文件包含一个public类,则文件名必须按该类名命名。可以将main方法写在非public类中,然后指定运行非public类。

三大组件的关系:JDK包含JRE,而JRE包含JVM。

二、Java核心(开发环境)——JDK(Java Development Kit)-开发者

1. JDK包括Java运行环境JRE,Java工具(javac/java/jdb等)和Java基础类库(即Java API 包括rt.jar)。
2. JDK是java开发工具包,在目录下面有六个文件夹、一个src类库源码压缩包、和其他几个声明文件。其中,真正在运行java时起作用的 是以下四个文件夹

      bin:最主要的是编译器(javac.exe)
      include:java和JVM交互用的头文件
      lib:类库
      jre:java运行环境【bin(即JVM)、lib(JVM工作所需要的类库)】

三、Java运行环境——JRE-使用者

JRE:Java运行环境(Java Runtime Environment),包含JVM标准实现及Java核心类库。JRE是Java运行环境,不是一个开发环境,不包含任何开发工具(如编译器和调试器)

四、Java核心机制——Java虚拟机(JVM-java virtual machine

JVM是java字节码执行的平台,也是java实现跨平台的重要组件,包含解释器。

1.JVM 是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器,包含在JDK

2.对于不同的平台,有不同的虚拟机

3.Java 虚拟机机制屏蔽了底层运行平台的差别,实现了一次编译,到处运行

4. JVM并不代表就可以执行class了,JVM执行.class还需要JRE下的lib类库的支持,尤其是rt.jar

利用JDK(调用JAVA API)开发JAVA程序后,通过JDK中的编译程序(javac)将文本java文件编译成JAVA字节码class文件,在JRE上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。

5. JVM内存: 主要考虑方法区、栈和堆

以一个数组为例:首先在方法区进行类加载,main方法入栈,声明一个数组,内存指向堆

 

五、Java运行流程

jdk bin目录下javac

编译乱码问题:文件编码与系统不匹配,java文件编码格式为UTF-8,而windows系统使用GBK编码

总结:

JDK = JRE + java 开发工具 (java, javac,javadoc,javap 等)

JRE = JVM + Java 的核心类库

如果只想运行开发好的 .class 文件 只需要 JRE

参考:韩顺平Java教程

        http://t.csdnimg.cn/64YGw

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值