如何安装java运行环境

在前面的文章《初识编程语言》中讲到过程序从开发到运行的全过程:我们首先要在计算机上用特定编程语言编写出代码文件,再经过编译器编译,生成二进制程序,最后由计算机运行这个程序。今天就讲下大家最关注的——我们怎样开始编写代码?

认识JDK

一台空白的计算机其实只认得二进制文件,而我们要进行某种语言的开发,就还需要在这台计算机上安装编程语言对应的编译器和基础类库,就像我们要使用电脑微信,就需要下载并安装微信软件一样。对于Java而言,我们只需要安装一个叫 JDK(Java Development ToolKit)的东西就可以啦~

如何安装java运行环境

JDK 主要包括 Java运行环境(JRE) 和 Java工具:其中 JRE包括 Java虚拟机 和 Java基础类库(关于Java虚拟机后面有空会展开讲解,大家可以先知道这个概念就行),而 Java工具里最重要的,就是我们之前说的,Java代码的编译器,它叫——javac,当然工具集里还包含一些其它监控工具。

安装JDK

以前安装老版本的JDK比较麻烦,我们要手工配置Java环境变量,但我亲测了下,新版的JDK安装已经帮我们省掉这一步了,我们只需要像安装其他软件一样安装JDK就行~

  • 如果你是macOS操作系统,可以到 https://www.oracle.com/java/technologies/downloads/#java8-mac 下载对应版本的JDK。

如何安装java运行环境

  • 如果你是Windows操作系统,可以到 https://www.oracle.com/java/technologies/downloads/#java8-windows 下载对应版本的JDK。

安装过程很简单,一路点击下一步即可。

如何安装java运行环境

然后,我们需要打开电脑上的 Terminal终端,它是一个黑框,是我们输入命令的地方。终端这个词听起来高大上(可能在电影里看到过黑客操作一个黑框的情节),其实它就是一个发送命令的窗口,这些命令可以是创建一份文件,也可以是打开一个软件,甚至可以是写一段文本。总之,它比我们爱用的图形界面要更强大,拥有更多的能力。不过,你知道怎么打开它吗?

  • 如果你是macOS操作系统,进入启动台,打开这个终端图标即可。

如何安装java运行环境

  • 如果你是Windows操作系统,利用快捷键 win+r 打开运行窗口,再在输入框里输入 cmd 就可以打开终端了。

如何安装java运行环境

在终端对话框内输入命令 java -version,如果有下面的版本信息出现,则表示已经安装成功啦~

如何安装java运行环境

运行第一个Java程序

JDK安装完成以后,这台电脑其实已经支持Java程序的开发了,我们只要懂Java的语法,使用电脑上最原始的编辑器 “记事本” 或者 “vim” 就可以编写一段Java代码~ 这里我提供一段代码示例,它可以在终端的屏幕上显示 Hello World 两个单词。

public class Main { public static void main(String args) { System.out.println("Hello World"); } }

将上面代码复制到编辑器里,命名为 Main.java,然后保存到你的桌面。

然后,再次打开Terminal终端,进入到桌面,如果是macOS操作系统可以使用命令 cd ~/Desktop 进入,而Windows操作系统可以使用命令 cd desktop 进入。然后,我们就可以执行编译命令 javac Main.java 将代码编译成字节码文件 Main.class 啦~ 编译完成后我们可以看到桌面又生成了一份叫 Main.class的文件。

如何安装java运行环境

不懂字节码为何物?可以把它类比成之前《初识编程语言》提到的二进制文件,只不过二进制文件是计算机认识和可执行的文件,而字节码文件是Java虚拟机认识和可执行的文件。目前不理解也没关系,这里只是为了先快速做一个演示,后面会详细讲解。

接下来就是运行这份字节码文件了,我们需要用到JDK里的另外一个工具——java,使用命令 java Main 来运行这份字节码文件,最后就可以得到程序的运行结果啦~ 注意java Main命令的Main后面不需要再加.class后缀喔~

如何安装java运行环境

总结

好啦~ 让我们回顾一下本期内容:我们先是安装了JDK,搭建好了Java的开发环境,然后又编写了一份Java代码叫Main.java,再利用编译命令javac编译出了叫Main.class的字节码文件,最后使用命令java运行Main程序,终端显示了Hello World。

但有个问题是,倘若我们每次都要用javac命令编译,然后用java命令运行,这么一来二去地折腾,会不会太麻烦了点?嘿嘿,其实有个非常强大的软件可以帮我们做这些事,到时候我们写完代码只用点一下运行按钮,就可以一步到位得到运行结果Hello World了~ 想知道的话就让我们期待下一章的内容吧~

题外话

本文【如何安装java运行环境】由作者: 前端后端 提供,本站不拥有所有权,只提供储存服务,如有侵权,联系删除!
本文链接:https://www.cuoshuo.com/blog/4416.html

(0)
上一篇 2023-03-12 09:03:57
下一篇 2023-03-13 08:00:41

相关推荐

  • linux命令行界面切换到图形界面_linux退出命令行界面

    终端退出后如何让程序在后台运行 nohup `command` &比如我的rails服务在退出终端之后也能跑在后台,可以这样来写 nohup `rails s -b 0.0.0.0` &或者将rails s -b 0.0.0.0写到b.bat文件添加可执行权限后,这样: 注意:&之前有空格 如果只是临时想跑在后台,那就不需要nohup…

    2023-03-08
    800
  • sql数据库入门

    一起来学SQL基础知识! 一、SQL基础与DDL 1.1 SQL的概述 SQL全称: Structured Query Language,结构化查询语言,用于访问和处理数据库的标准的计算机语言。 SQL语言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统SystemR上实现。 经过多年发展,SQL已成为数据库领域统一的…

    2023-03-08
    800
  • shell编程入门

    Shell脚本编程难,难于上青天!这话不假,尤其很多程序员新人,学了几个月Shell脚本写得还是一塌糊涂,但闻道有先后,术业有专攻,他人能学好Shell脚本编程只是因为比我们早些接触而已。 作为一名优秀的程序员,懂得Shell脚本是基本功,要想后续站得更稳,这个基本功必须得打牢。 今天给大家分享从基础到进阶的Shell脚本编程,共两册,适合不同学习进度的朋友…

    2023-03-09
    2600
  • hibernate二级缓存的作用_java一级缓存二级缓存

    起因 一直都没找到二级缓存在php中应用的比较好的资料和案例,由于范凯RobbinWeb 应用的缓存设计模式和Hibernate二级缓存的启示,记下这篇二级缓存在Eloquent ORM中的应用。 过程 比如博客的首页调用最新的20篇文章,相信不少同学在刚开始使用缓存的时候,会写下如下代码: 当然,模型中还能预加载每篇文章的分类,作者和tag信息,看起来没有…

    2023-03-08
    1900
  • c语言int类型占几个字节(int到底占几个字节)

    什么是指针 C语言里,变量存放在内存中,而内存其实就是一组有序字节组成的数组,每个字节有唯一的内存地址。CPU 通过内存寻址对存储在内存中的某个指定数据对象的地址进行定位。这里,数据对象是指存储在内存中的一个指定数据类型的数值或字符串,它们都有一个自己的地址,而指针便是保存这个地址的变量。也就是说:指针是一种保存变量地址的变量。前面已经提到内存其实就是一组有…

    2023-03-15
    200
  • 智能h3输入法无法显示键盘,键盘失灵怎么打开软键盘

    大家好,今天给大家分享“键盘坏了软键盘怎么打开?” 平时在使用电脑中,如果键盘突然损坏不能用了,此时急需要用键盘输入信息,最快的方法是用电脑上自带的软键盘代替输入,但是电脑上的软键盘怎么打开呢?下面给大家介绍两种打开软键盘的方法,希望对大家有所帮助。 下面我们以win10系统为例来演示操作,教大家键盘损坏以后怎么打开电脑自带的软键盘。 方法一: (1)首先在…

    2023-03-18
    100
  • linuxshell编程期末常考题_shell编程100例

    shell是包裹在linux内核外层的,一个可通过一系列的linux命令对操作系统发出相关指令的人机界面。shell可以通过其条件语句和循环语句等,把一系列linux命令结合在一起,形成一个相当于面向过程的程序,从而实现一些较为复杂的功能。 shell是用户使用Linux的桥梁,一个Linux维护人员的水平,往往就是靠对shell的理解来决定的! 今天给大家…

    2023-03-12
    300
  • JSP实用教程第四版知识点

    JSP中的动态INCLUDE与静态INCLUDE的区别 jsp:include 在运行时调用另一个页面变量可以是重复的 <% @include file=””%>: 在转译时合在一起 会成为同一个类 变量不可以重复 forward与redirect区别 forward:转发 在下一个页面中,request保留上一个页面中r…

    2023-03-19
    000
  • c语言scanf输入浮点型_double类型用scanf输入

    程序是人机交互的媒介,有输出必然也有输入,我们开始讲解如何从键盘输入数据。在C语言中,有多个函数可以从键盘获得用户输入: scanf():和 printf() 类似,scanf() 可以输入多种类型的数据。 getchar()、getche()、getch():这三个函数都用于输入单个字符。 gets():获取一行数据,并作为字符串处理。 scanf() 是…

    2023-03-08
    700
  • java动态初始化数组_Java数组初始化

    动态初始化: 初始化时只指定数组长度, 由系统为数组分配初始值 静态初始化: 初始化时指定每个数组元素的初始值, 由系统决定数组长度。 格式: m:长度值 动态: 数据类型 数组名 = new 数据类型; 静态: 数据类型 数组名 = new 数据类型{元素值,…}; 静态简化写法: 数据类型 数组名 = {元素值,…}; 推荐使用简…

    2023-03-09
    900

发表回复

登录后才能评论
返回顶部
错说博客上线啦!