一文搞懂Java环境,轻松实现Hello World!
在上篇文章中,我们介绍了Java自学大概的路线。然而纸上得来终觉浅,今天我们教大家写第一个java demo。(ps:什么是demo?Demo的中文含意为“示范",Demo源码可以理解为某种计算机语言的示例代码)
今天的文章将分为三个部分:
简单介绍JRE、JDK、JVM
介绍环境安装流程
编写运行hello,word
一、JRE、JDK、JVM概念及关系
JVM是Java Virtual Machine(Java虚拟机)的缩写。JVM具有的跨平台特性,决定了Java语言具有强移植性的特点。因为JVM只识别class类文件,针对不同的系统有不同的 jvm 实现,再针对class类文件与其对应的操作系统交互,一次编译,多处运行便是这个道理。
JRE是JAVA Runtime Environment 三个单词的首字母缩写,顾名思义即为Java运行环境,JRE中包含了JVM及其他JAVA核心类库。若你只是Java程序的使用者,那么你安装JRE便可满足你的需求。
JDK是Java Development Kit的缩写,即为Java开发工具包,JDK中包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具:jconsole,等工具软件,还包含了java程序编写所需的文档和demo例子程序。以及其他java开发工具,简而言之,JDK是提供给java开发者使用的。
以一张自己做的图来表达三者之间的关系:

二、Java 环境安装
在介绍了三者关系之后,我们应该清楚开发者需要的JDK,我们需要先下载JDK,下面是下载JDK8的链接
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
点开链接后,勾选上accept,根据系统类型选择对应的版本,我这边选的是windows64位

现在JDK8及以下版本在官网下载需要登录Oracle账户了,有账户的可以登录下载,没有账户的就需要注册了。如果嫌麻烦的可以从下面网盘地址直接下载。jdk8-64位
https://pan.baidu.com/s/1slmpnvn
下载完了之后,开始安装,一直点击下一步,在选择安装路径时,记录住安装路径,等会儿配变量时需要。

然后一直点击下一步,完成安装即可。
接着返回电脑桌面,右键计算机,点击左侧高级系统设置,点击环境变量,如下图,再点击新建

变量名为JAVA_HOME,变量值为刚刚安装时的安装路径,我的路径为C:\Program Files\Java\jdk1.8.0_05\,你需要换成你的安装路径,新建完后点击确定。然后在系统变量中找到Path变量,双击他进入编辑状态,将光标移动到变量值的最前面,输入%JAVA_HOME%\bin; 接着一直点击确定就可以了。
此时打开cmd,输入java -version 出现版本号即为JAVA环境安装成功。
三、Hello,World!
接下来我们编写第一个hello,world程序~可别写出bug像这样..hhh

来看下我们的代码:

可以用记事本,也可以用其他编辑器,我这边用的是notepad++,一个注意点就是注意文件名要和类名一样,文件名应该是 公有类名.java,我这边类名为Demo,文件名为Demo.java,我这边将其保存在D:\下。
打开cmd,cd 到D:\下,输入javac 文件名 编译成class文件

接着输入 java 类名 运行类文件,打印出Hello world 即运行成功~

个人微信订阅号: Java从零单排
分享java学习资料链接,交流Java学习经验

一文搞懂Java环境,轻松实现Hello World!的更多相关文章
- 一文搞懂Java引用拷贝、浅拷贝、深拷贝
微信搜一搜 「bigsai」 专注于Java和数据结构与算法的铁铁 文章收录在github/bigsai-algorithm 在开发.刷题.面试中,我们可能会遇到将一个对象的属性赋值到另一个对象的情况 ...
- 一文搞懂Java引用拷贝、深拷贝、浅拷贝
刷题.面试中,我们可能会遇到将一个对象的属性赋值到另一个对象的情况,这种情况就叫做拷贝.拷贝与Java内存结构息息相关,搞懂Java深浅拷贝是很必要的! 在对象的拷贝中,很多初学者可能搞不清到底是拷贝 ...
- 夯实Java基础系列17:一文搞懂Java多线程使用方式、实现原理以及常见面试题
本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...
- 一文搞懂 Java 线程中断
在之前的一文<如何"优雅"地终止一个线程>中详细说明了 stop 终止线程的坏处及如何优雅地终止线程,那么还有别的可以终止线程的方法吗?答案是肯定的,它就是我们今天要分 ...
- 夯实Java基础系列19:一文搞懂Java集合类框架,以及常见面试题
本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...
- 一文搞懂--Java中重写equals方法为什么要重写hashcode方法?
Java中重写equals方法为什么要重写hashcode方法? 直接看下面的例子: 首先我们只重写equals()方法 public class Test { public static void ...
- 一文搞懂Java/Spring/Dubbo框架中的SPI机制
几天前和一位前辈聊起了Spring技术,大佬突然说了SPI,作为一个熟练使用Spring的民工,心中一紧,咱也不敢说不懂,而是在聊完之后赶紧打开了浏览器,开始的学习之路,所以也就有了这篇文章.废话不多 ...
- 一文搞懂 Java 中的枚举,写得非常好!
知识点 概念 enum的全称为 enumeration, 是 JDK 1.5 中引入的新特性. 在Java中,被 enum关键字修饰的类型就是枚举类型.形式如下: enum Color { RED, ...
- 一文彻底搞懂Java中的环境变量
一文搞懂Java环境变量 记得刚接触Java,第一件事就是配环境变量,作为一个初学者,只知道环境变量怎样配,在加上各种IDE使我们能方便的开发,而忽略了其本质的东西,只知其然不知其所以然,随着不断的深 ...
随机推荐
- 51.从首页内容跳转到第二个Tabbar控制器(controller)
TabBarController: 创建TabBar的控制器 注意:在点击的内容方法页面,添加头文件 #import "TabBarController.h" #import &q ...
- Codeforces 1106 简要题解
文章目录 A题 B题 C题 D题 E题 F题 传送门 A题 传送门 读错题还能过样例我给自己点个赞. 题意简述:给一个010101网格SSS,问满足Si,j=Si+1,j+1=Si+1,j−1=Si− ...
- python中下划线
引用:https://blog.csdn.net/tcx1992/article/details/80105645?from=timeline Python中下划线的5种含义 class A(obje ...
- Eclipse环境下如何配置tomcat,并且把项目部署到Tomcat服务器上
打开Eclipse,单击“Window”菜单,选择下方的“Preferences”. 单击“Server”选项,选择下方的“Runtime Environments”. 点击“Add”添加Tomca ...
- Ethernet II和802.3
在卷一中:(章节二:数据链路层) 在T C P / I P协议族中,链路层主要有三个目的: (1)为IP模块发送和接收IP数据报: (2 )为ARP模块发送ARP请求和接收ARP应答: (3 )为RA ...
- NoSQL数据库的分布式算法
本文译自 Distributed Algorithms in NoSQL Databases 系统的可扩展性是推动NoSQL运动发展的的主要理由,包含了分布式系统协调,故障转移,资源管理和许多其他特性 ...
- hdu 4939 三色塔防
http://acm.hdu.edu.cn/showproblem.php?pid=4939 给出一条长为n个单位长度的直线,每通过一个单位长度需要 t 秒. 有3种塔,红塔可以在当前格子每秒造成 x ...
- [ 9.12 ]CF每日一题系列—— 960B暴力数组
Description: 给你两个数组,顺序一定,问你第一个数组连续的几个值等于下一个数组连续的几个值,然后寻找这个值得最大值,也就是满足就换 Solution: 用两个变量索引,判断即可 #incl ...
- SRM480
250pt: 题意:给定n个网站,以及n个网站的关键词,还有一个危险词库.如果一个网站的关键词中>=th的危险词,那么这个网站便是危险的.同时,他的所有关键词加入危险词库.问,有多少个危险网站. ...
- cxgrid动态创建列
cxgrid动态创建列 procedure TFrmRuleEdit.CreateCols;varColumn: TcxGridDBColumn;begincdsPowerPrj.First;whil ...