Java的入门知识和环境配置
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的入门知识和环境配置的更多相关文章
- RabbitMQ消息队列入门篇(环境配置+Java实例+基础概念)
一.消息队列使用场景或者其好处 消息队列一般是在项目中,将一些无需即时返回且耗时的操作提取出来,进行了异步处理,而这种异步处理的方式大大的节省了服务器的请求响应时间,从而提高了系统的吞吐量. 在项目启 ...
- Java基础入门知识
Java编程入门知识 知识概要: (1)Java入门基本常识 (2)Java的特性跨平台性 (3)Java的编程环境的搭建 (4)Java的运行机制 (5)第一个Java小程序入门 (1)Java ...
- Java web 入门知识 及HTTP协议详解
Java web 入门知识 及HTTP协议详解 WEB入门 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资 ...
- PHP入门及服务环境配置(Nginx+PHP)
PHP入门及服务环境配置(Nginx+PHP) PHP入门 PHP维基百科: PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文本预处理器")是一 ...
- win7+64位+Java学习基本软件安装+环境配置+eclipse(IDE)
一.下载安装JDK 1.安装包下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.h ...
- 视频+图文教程 | Java之安装JDK与环境配置
演示所用软件JDK 8与Eclipse(Java开发工具)软件下载链接: 链接:https://pan.baidu.com/s/1Vg9ulrQH8WlGRAE89Y02UA提取码:swwl 视频介绍 ...
- PHP入门介绍与环境配置
浏览目录: 一.PHP的背景和优势: 二.PHP原理简介: 三.PHP运行环境配置: 四.编写简单的PHP代码以及测试. 一.PHP的背景和优势 1.1 什么是PHP? PHP是能让你生成动态网页 ...
- Java基础(57):Eclipse中环境配置(视图字体颜色行号调试快捷键等等)
1:Eclipse的基本配置 A:程序的编译和运行的环境配置(一般不改) window -- Preferences -- Java 编译环境:Compiler 默认选中的就是最高版本. 运行环境:I ...
- Core Java 学习笔记——1.术语/环境配置/Eclipse汉化字体快捷键/API文档
今天起开始学习Java,学习用书为Core Java.之前有过C的经验.准备把自己学习这一本书时的各种想法,不易理解的,重要的都记录下来.希望以后回顾起来能温故知新吧.也希望自己能够坚持把自己学习这本 ...
随机推荐
- linux-Centos 7下mysql 5.7.9的rpm包安装
操作系统:Centos 7.1 mysql数据库版本:mysql5.7.18 1.安装新版mysql之前,我们需要将系统自带的mariadb-lib卸载 [root@123 ~]# rpm -qa|g ...
- 小X归来 模拟赛1 解析
Problem1 单峰 小X 归来后,首先对数列很感兴趣.他想起有1类特殊的数列叫单峰数列. 我们说一个数列 {ai} 是单峰的,当且仅当存在一个位置 k 使得 ai < ai+1(i < ...
- LINUX网络编程 IO 复用
参考<linux高性能服务器编程> LINUX下处理多个连接时候,仅仅使用多线程和原始socket函数,效率十分低下 于是就出现了selelct poll epoll等IO复用函数. 这 ...
- 抓包之网络分析器- Wiresshark
https://www.wireshark.org/ Wireshark(前称Ethereal)是一个网络封包分析软件.网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料.Wi ...
- 2018.07.08 hdu1394 Minimum Inversion Number(线段树)
Minimum Inversion Number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Ot ...
- <%@ include file=""%>与<jsp:include page=""/>
https://www.cnblogs.com/sharpest/p/6117629.html
- 用eclipse创建maven的webapp项目
来自http://www.cnblogs.com/candle806/p/3439469.html和http://blog.csdn.net/chuyuqing/article/details/288 ...
- I/O Planning
同一个BANK的电压必须是一样的,而电气特性则可以不同. 最近GTX调不出来,原来是电平不对 电源的影响 示波器看电源纹波 VCCO是为BANK的IO输出供电.比如LVCMOS33的信号,这个BANK ...
- 动态链接库编程:非MFC DLL
设计一个DLL,内含一个函数计算a+b: DLL的组成 .h(头文件) 定义了DLL能够导出的函数.数据结构或类的声明,该文件的声明内容在.CPP文件中实现,而.CPP的源程序被封装到DLL文件中 . ...
- linux信号量(转载)
本文转载自http://blog.csdn.net/qinxiongxu/article/details/7830537 信号量一.什么是信号量信号量的使用主要是用来保护共享资源,使得资源在一个时刻只 ...