【Java 基础篇】Java 初识、编译运行机制及开发环境搭建

news2025/7/7 15:10:31

在这里插入图片描述

    • 一、Java 语言初识
    • 二、Java 编译运行机制
      • 2.1 JVM、JRE、JDK 三大概念介绍
      • 2.2 Java 是如何运行的
    • 三、Java 开发环境搭建(文末附下载地址)
    • 四、第一个 Java 项目
      • 4.1 创建项目和 .Java 源文件
      • 4.2 输出 hello world


一、Java 语言初识

Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的,由 James Gosling 和同事共同研发,1995 年正式推出。Java 最初被称为 Oak,是 1991 年为消费类电子产品的嵌入式芯片而设计的,1995 年更名为 Java,并重新设计用于开发 Internet 应用程序。

Java 是一门 高级 的计算机编程语言。这里所说的高级,是因为 Java 非常符合人的思维,可以将我们人的思维用于该语言,也就是说我们想要怎么做,都可以用 Java 语言来实现。即使没有学习过计算机编程,只要看到这段代码就知道该代码的主要功能。Java 共包含三个体系:

  1. Java SE,平台标准版,我们可以将它理解为 Java 的桌面版。
  2. Java EE,平台企业版,主要用于构建大型网站。
  3. Java ME,平台微型版,一般情况用于手机移动终端。

二、Java 编译运行机制

2.1 JVM、JRE、JDK 三大概念介绍

JVM(Java Virtual Machine),Java 虚拟机。它是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,它是 Java 最具吸引力的特性之一。

JRE(Java Runtime Environment),Java 运行环境。是一个软件,由太阳微系统所研发,JRE 可以让计算机系统运行 Java 应用程序(Java Application)。JRE 包含 JVM 以及其他运行 java 所必须的环境。

JDK 是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的 java 应用程序。JDK 是整个 java 开发的核心。JDK 包含 JRE 以及开发程序所必须的命令工具。

通过这三个概念我们可以得出:

运行 Java 程序的最小环境为 JRE。
开发 Java 程序的最小环境为 JDK。

2.2 Java 是如何运行的

Java 作为一种高级语言,计算机是无法识别的。因为计算机本身只能识别 0 和 1 两个符号,这时候便需要将 Java 语言进行编译,使得计算机能够识别,这就是 Java 的编译运行过程。整个编译运行过程共两步:

第一步 【编译】.java 源文件经过编译之后先生成一个 .class 字节码文件。
第二步 【运行】JVM 加载并运行 .class 文件(JVM 可将字节码译为 0 和 1 供计算机识别)。

这样的设计其实极具特点,关键是在于 JVM。当我们使用 Java 语言开发了某一个程序时,若想在其他不同的系统中运行,只需要在该系统中安装 JVM 即可。假设我们在 window 系统中使用 java 开发了一个学生管理系统,那么此时 JVM 所加载生成就是 Windows 版本的 0 和1,如果我们想要在 Linux 系统下运行此学生管理系统,仅需在该 Linux 系统中安装 JVM,那个时候 JVM 所生成 0 和 1 则是 Linux 版本的,而无论什么系统只要安装 JVM,我们的学生管理系统都可以在上面正常运行,无需重新编译。

这正是 Java 编程语言的 跨平台 特性,一次编译,到处使用。.java 源文件只需要生成一次 .class 字节码文件,接下来它就可以在安装的 JVM 的基础上在各个平台(系统)运行了。

三、Java 开发环境搭建(文末附下载地址)

对于 Java 开发环境的搭建,我们需要分别安装 JDK8 和开发工具 IDEA。

第一步安装 JDK,JDK 的安装非常简单,下载包之后一直点击下一步即可。需要注意的是我们尽量将 JDK 安装到 C 盘,且不可用中文名称命名

在这里插入图片描述
安装完成之后,打开命令行工具 cmd,输入 java -version 命令查看 JDK 版本信息,可以看到版本信息就说明安装成功。如下图,我的 JDK 版本是 1.8,也就是我们通常所说的 JDK8 版本。

在这里插入图片描述
第二步安装开发工具,借助开发工具后则可以不用再进行环境变量等的配置。我们这里以使用 IDEA 为例。

IDE 意为集成开发环境,是一套带图形界面的开发工具,常见的有 IDEA 和 eclipse。

IDEA 安装过程也非常简单,点击下一步即可,安装完成后打开软件是这样的;

在这里插入图片描述
将 IDEA 和 JDK 分别安装完成之后,开发环境就算搭建完成了。

四、第一个 Java 项目

4.1 创建项目和 .Java 源文件

开发环境搭建完毕,接下来我们创建第一个 Java 项目。打开 IDEA 软件,点击新建项目,然后直接下一步,输入项目名称和存储地址后,点击完成;

在这里插入图片描述
此时我们的第一个项目创建完成;

在这里插入图片描述
在整个项目目录中,src 是我们的主要工作目录。选择目录“src” --> “new” --> “Package”,进行新建包的操作,包名自定;

在这里插入图片描述
接下来在我们新创建的包中再创建 .class 源文件,选择包名 --> 右键 --> “new” --> “Java class”,新建类

在这里插入图片描述
这里所创建的类也就是 .class 源文件,我们今后的 Java 程序都是在此文件中编写的;

在这里插入图片描述
接下来在源文件自动生成的代码中的大括号中输入单词 main 根据提示自动生成一个主方法,这就完成了最初始的 Java 语法结构。计算机执行的是主方法 main(){} 中的语法,main(){} 之外的语句一概不执行。

package MyFirstJava; //声明包,包名为MyFirstJava

public class java01 { //声明类,类名为java01,整个{}中代表一个类
    //main为主方法,是程序的入口,程序的执行从main开始,从main结束
    public static void main(String[] args) {
        //程序1
        //程序2
        //程序3
        //......
    }
}

4.2 输出 hello world

接下来我们写一个简单的输出语法,输出“Hello World!”;

package MyFirstJava; //声明包,包名为MyFirstJava

public class java01 { //声明类,类名为java01,整个{}中代表一个类
    //main为主方法,是程序的入口,程序的执行从main开始,从main结束
    public static void main(String[] args) {
        //输出Hello World!
        System.out.println("Hello World!");
    }
}

运行 Java 程序,在代码页点击鼠标右键选择 “Run ‘…main()’ ”;如下图:

在这里插入图片描述
运行成功如下图。

在这里插入图片描述


Java 开发环境所需包和软件下载地址:

  • JDK8 下载地址 JDK8 Windows/macOS 版本,提取码 0214
  • IDEA 下载地址 IDEA Windows/macOS 版本,提取码 0214

Java 语法的注释:

  • 单行注释 //
  • 多行注释 /* */
  • 文档注释 /** */

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/406938.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

十大经典排序算法(下)

🍓个人主页:bit.. 🍒系列专栏:Linux(Ubuntu)入门必看 C语言刷题 数据结构与算法 HTML和CSS3 目录 1.6 快速排序 1. 算法步骤 2. 动图演示 3.代码实现 1.7 堆排序 1. 算法步骤 2. 动图演示 3. 代码实现 1.8 计数排…

JavaScript注册监听事件与清除监听事件

JavaScript中有两种方法可以注册监听事件,一种是传统的注册方式,on事件名称的注册方法,如btn.onclick,还有方法监听事件注册方式, addEventListener()和ie8以下的attachEvent()。 注册监听事件 传统方式 语法格式:元…

ES6笔记————let,箭头函数,剩余参数

目录 一.let,var,const区别 let const 区别 二,解构 1 数组解构 2对象解构 三,箭头函数 1 基础语法 2 省略写法 3 对象方法里的this 4 apply/call调用时的this 5 箭头函数中this 8 箭头函数应用 四,剩余函数 一.let,var,con…

【bug】Failed at the node-sass@4.14.1 postinstall script(终于圆满解决)

花了两个小时才解决 首先是从git上克隆项目到本地,然后安装nodele_modules,输入npm i安装 安装到一半报错 npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! node-sass4.14.1 postinstall: node scripts/build.js npm ERR! Exit status 1 npm ERR! …

关于 Vue “__ob__:Observer“ 属性的解决方案

问题描述 我们操作 Vue 数据的时候,经常会看到这个属性: __ob__:Observer在我们操作这个数据的时候,如果想要单独拿这个数据里面的值,就会返回 undefined经过我在网上查找相关资料,发现 __ob__:Observer 是 Vue 中一个非常重要的…

【vue】diff 算法详解

一、diff算法是什么 diff算法是一种通过同层的树节点进行比较的高效算法 diff算法的目的就是找出新旧不同虚拟DOM之间的差异,使最小化的更新视图,所以 diff 算法本质上就是比较两个js对象的差异 特点 1. 比较只会在同层级进行,不会跨层级比较 2. 在diff…

原生JS实现飞机大战游戏 超详细解析 快来做一个自己玩吧

目录 1. 案例分析💨 2. 适配设备 💨 3. 背景滚动💨 4. hero操作💨 5. 敌机的创建与运动💨 6. 子弹的创建与运动💨 7. 碰撞检测💨 8. 统计得分💨 9. 设置开始与结束界面&…

疫情散去想看电影,使用css3动画实现一个阿凡达2完美开场

在历经了艰苦卓绝的3年抗疫后,疫情终于还是来了,很多小伙伴变成了小洋人酸奶,我相信过不了多少天,疫情终将散去,那个时候就可以和家人走进电影院啦。 今天用css布局一个阿凡达2的影院场景,提前过一过瘾。 目…

《uni-app》表单组件-form表单

本文分享的Form组件为uni-app的内置组件Form,非扩展组件,两者在用法上其实大同小异,只是扩展组件的属性以及事件更多…没有本质上的区别~ 《uni-app》表单组件-form表单一. 简介二. 基础用法三. submit事件四. reset事件五. repor…

Tomcat安装配置及IDEA配置方法【亲测有效】

Tomcat安装配置及IDEA配置1.下载Tomcat2.配置Tomcat环境变量3.安装Tomcat4.启动Tomcat5.测试Tomcat6.IDEA配置Tomcat1.下载Tomcat Tomcat9官网下载地址 选择自己需要的版本,一般选择Windows 64位压缩包版本: 下载完后安装解压即可,解压后的…

如何使用nvm切换node版本

我比较懒惰,如非必要,不喜欢npm版本切换来切换去,感觉浪费我编程的时间.后来发现,现在偷的懒都是为将来的忙碌埋下的祸根. 言归正传,本文主要是讲解一下,如何使用nvm进行npm版本的切换. 工欲善其事必先利其器,我们先下载nvm;直接上下载链接(针对windows哈,毕竟我没mac本); 下载…

Code For Better 谷歌开发者之声——初识Web与谷歌,拉起兴趣之心。

个人名片: 博主:酒徒ᝰ. 个人简介:沉醉在酒中,借着一股酒劲,去拼搏一个未来。 本篇励志:程序是我的生命,但我相信爱她甚过爱我的生命。 目录一、了解谷歌浏览器1. 简介2.优点二、认识Web1. 简介2. 特点2. 网…

【云原生 | 21】Docker运行Web服务实战之Apache

作者简介:🏅云计算领域优质创作者🏅新星计划第三季python赛道第一名🏅 阿里云ACE认证高级工程师🏅 ✒️个人主页:小鹏linux 💊个人社区:小鹏linux(个人社区)欢…

【微信小程序】如何获得自己当前的定位呢?本文利用逆地址解析、uni-app带你实现

目录 前言 效果展示 一、在腾讯定位服务配置微信小程序JavaScript SDK 二、使用uni-app获取定位的经纬度 三、 逆地址解析,获取精确定位 四、小提示 前言 效果展示 一、在腾讯定位服务配置微信小程序JavaScript SDK 在浏览器搜索腾讯定位服务,找…

React(四) ——hooks的使用

🧁个人主页:个人主页 ✌支持我 :点赞👍收藏🌼关注🧡 文章目录⛳React Hooks💸useState(保存组件状态)🥈useEffect(处理副作用)🔋useCallback(记忆函数&#…

Sass 和 SCSS

▣Sass (Syntactically Awesome StyleSheets),是由buby语言编写的一款css预处理语言,和html一样有严格的缩进风格,和css编写规范有着很大的出入,是不使用花括号和分号的,所以不被广为接受。 Sass 是一款强化 CSS 的辅助…

使用Nodejs搭建HTTP服务,并实现公网远程访问「内网穿透」

文章目录前言1.安装Node.js环境2.创建node.js服务3. 访问node.js 服务4.内网穿透4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口5.固定公网地址前言 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation(原…

微信小程序|基于小程序+云开发制作一个菜谱小程序

今天吃什么?这是一个让强迫症左右为难的问题,跟随此文基于小程序+云开发制作一个菜谱小程序,根据现有食材一键生成菜谱,省心又省力。 一、小程序1. 创建小程序</

【python】喜欢XJJ?这不得来一波大采集?

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 俗话说的好&#xff1a;技能学了~就要用在自己喜欢得东西上&#xff01;&#xff01; 这我不得听个话~我喜欢小姐姐&#xff0c;跳舞的小姐姐 这不得用python把小姐姐舞采集下来~嘿嘿嘿 完整源码、素材皆可点击文章下方名片…

Java web学生信息管理系统(jsp)

&#x1f95e;目录 &#x1f36c;1 概述 1.1课程设计目的 1.2预备知识 JAVAWeb&#xff1a; MySQL&#xff1a; JSP&#xff1a; 1.3实训的内容和要求 &#x1f36c;2 需求分析 2.1系统目标 2.2功能分析&#xff1a; 2.3开发环境&#xff1a; &#x1f36c;3 设计步…