JVM(Java Virtual Machine)Java虚拟机

JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

JAVA语言非常重要的特点就是与平台的无关性,而使用JAVA虚拟机是实现这一特点的关键。

Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够“一次编译,到处运行”的原因。

JRE(Java Runtime Environment) Java运行环境

JRE是Java Runtime Environment缩写,指Java运行环境。

JRE包含JVM(JAVA虚拟机)和JAVA程序所需的核心类库、支持文件。

*如果想要运行一个开发好的JAVA程序,只需要安装JRE即可。

JDK(Java Development Kit) Java开发包

JDK是JAVA语言的软件开发包,是提供给JAVA开发人员使用的。

JDK包含了JRE(JVM+JAVA核心类库)和JAVA工具(编译工具javac.exe、打包工具jar.exe、文档生成器javadoc、查错工具jdb – debugger)

JAVA的各个版本:

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

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

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

什么叫环境变量?

比如系统自带的记事本程序notepad,在命令提示符窗口,任何路径下输入notepad,都能打开记事本程序。

这就是因为notepad有设定了环境变量。

故需要在系统中设置javac编译器的环境变量,使之在任何目录都能运行javac工具。

Java环境配置步骤:

1.Oracle官网下载JDK适合的版本并安装;

2.在系统属性中打“环境变量”窗口;

3.新建JAVA_HOME变量;-->自定义系统变量

变量值即JDK的安装路径,如:C:\Program Files\Java\jdk1.8.0_211

4.编辑Path变量;-->修改Path变量

添加变量值:%JAVA_HOME%\bin和%JAVA_HOME%\jre\bin

*其实也可以直接将JDK的安装路径添加到Path变量中来,但这样一来一旦JDK的目录变了,那path变量也要跟着变化。

而Path变量是系统最重要的变量,一旦出错了将导致许多程式不能运行,存在一定的风险。

5.新建CLASSPATH变量;-->定义类文件的目录,告诉JVM去什么地方执行Java程序

变量值:变量值:.;%JAVA_HOME%\lib;JAVA_HOME%\lib\tools.jar (注意最前面有一个点,不要漏了)

CLASSPATH的作用有于将Java的类文件的目录告诉系统,使之在任何目录下都能运行类文件。

最前面加点的作用在于,既会去指定的目录查找类文件,也会在当前目录查找类文件。如果没有那个点,那JVM只会查找指定目录。

Java程序执行过程:

1.将Java源代码编写到源文件中,源文件的扩展名为.java。(可使用各种文本编辑工具编写源文件,比如notepad,只要最后修改扩展名即可)

2.使用javac.exe工具对源文件进行编译,生成.class文件。(.class文件的文件名即为类名) -->使用javac命令调用JDK中的编译工具,并检查语法错误

 编译源文件的时候记得 一定要加上后缀.java才行。

3.使用java命令运行.class文件生成结果输出。-->使用java命令启动JVM虚拟机,然后将.class文件加载进内存

 记住,这里不同上面,运行.class文件的时候不需要加后缀名。

 * 任何一个应用程序都要进内存中运行。

Java的入门知识和环境配置的更多相关文章

  1. RabbitMQ消息队列入门篇(环境配置+Java实例+基础概念)

    一.消息队列使用场景或者其好处 消息队列一般是在项目中,将一些无需即时返回且耗时的操作提取出来,进行了异步处理,而这种异步处理的方式大大的节省了服务器的请求响应时间,从而提高了系统的吞吐量. 在项目启 ...

  2. Java基础入门知识

    Java编程入门知识   知识概要: (1)Java入门基本常识 (2)Java的特性跨平台性 (3)Java的编程环境的搭建 (4)Java的运行机制 (5)第一个Java小程序入门 (1)Java ...

  3. Java web 入门知识 及HTTP协议详解

     Java  web  入门知识 及HTTP协议详解 WEB入门 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资 ...

  4. PHP入门及服务环境配置(Nginx+PHP)

    PHP入门及服务环境配置(Nginx+PHP) PHP入门 PHP维基百科: PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文本预处理器")是一 ...

  5. win7+64位+Java学习基本软件安装+环境配置+eclipse(IDE)

    一.下载安装JDK 1.安装包下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.h ...

  6. 视频+图文教程 | Java之安装JDK与环境配置

    演示所用软件JDK 8与Eclipse(Java开发工具)软件下载链接: 链接:https://pan.baidu.com/s/1Vg9ulrQH8WlGRAE89Y02UA提取码:swwl 视频介绍 ...

  7. PHP入门介绍与环境配置

    浏览目录: 一.PHP的背景和优势: 二.PHP原理简介: 三.PHP运行环境配置: 四.编写简单的PHP代码以及测试. 一.PHP的背景和优势 1.1   什么是PHP? PHP是能让你生成动态网页 ...

  8. Java基础(57):Eclipse中环境配置(视图字体颜色行号调试快捷键等等)

    1:Eclipse的基本配置 A:程序的编译和运行的环境配置(一般不改) window -- Preferences -- Java 编译环境:Compiler 默认选中的就是最高版本. 运行环境:I ...

  9. Core Java 学习笔记——1.术语/环境配置/Eclipse汉化字体快捷键/API文档

    今天起开始学习Java,学习用书为Core Java.之前有过C的经验.准备把自己学习这一本书时的各种想法,不易理解的,重要的都记录下来.希望以后回顾起来能温故知新吧.也希望自己能够坚持把自己学习这本 ...

随机推荐

  1. WARNING [main] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [] milliseconds.

    编译安装tomcat-native和tomcat-deamon以后,发现toomcat启动很慢,好久才有响应.以下日志供参考: 11-Sep-2017 12:19:28.102 INFO [main] ...

  2. hg 添加用户

    .hg目录下hgrc文件 [ui] username = lyd

  3. [VBScript] 自动删除2小时以前生成的文件

    保存为deleteTempFiles.vbs,双击即可运行 dim folder, file, mFSO, subfolder Set mFSO = CreateObject("Script ...

  4. bat批量重命名文件

    @echo off setlocal enabledelayedexpansion set prefix="mai" set /a num=000 rem 排序/o:? -代表逆序 ...

  5. 2018.07.04 POJ 1265 Area(计算几何)

    Area Time Limit: 1000MS Memory Limit: 10000K Description Being well known for its highly innovative ...

  6. @GeneratedValue和@GenericGenerator(转)

    一.JPA通用策略生成器 通过annotation来映射hibernate实体的,基于annotation的hibernate主键标识为@Id, 其生成规则由@GeneratedValue设定的.这里 ...

  7. Unable to load tag handler class "com.showId.Id.ShowId" for tag "ShowId:ShowId"] with root cause错误的解决方案

     严重: Servlet.service() for servlet [jsp] in context with path [/Biaoqian] threw exception [/1.jsp (l ...

  8. BZOJ 1008 [HNOI2008]越狱 (简单排列组合 + 快速幂)

    1008: [HNOI2008]越狱 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 10503  Solved: 4558[Submit][Status ...

  9. Apache Struts 2 Documentation Big Picture

    http://struts.apache.org/docs/big-picture.html 1. HttpServletRequest 穿越各个过滤器到达FilterDispatcher(这个已经不 ...

  10. JVM,Java虚拟机基础知识新手入门教程(超级通熟易懂)

    作者:请叫我红领巾,转载请注明出处http://www.cnblogs.com/xxzhuang/p/7453746.html,简书地址:http://www.jianshu.com/p/b963b3 ...