【Java基础_01】Java运行机制及运行过程

【Java基础_01】Java运行机制及运行过程

文章目录

  • 【Java基础_01】Java运行机制及运行过程
  • 1.Java 运行机制及运行过程
    • 1.1 Java 核心机制-Java 虚拟机 [JVM java virtual machine] 
    • 1.2 JDK,JRE
    • 1.3 JVM,JDK和JRE
    • 1.4 环境变量path
      • 1.4.1 为什么要配置path
      • 1.4.2 配置环境变量 path 的步骤
      • 1.4.3 环境变量配置细节说明
    • 1.5 Java运行
      • 什么是编译
      • 什么是运行
      • 注意事项
    • 1.6 转义字符
      • 1.7 文档注释
      • 1.8 Java代码规范
    • 1.9 DOS相关
      • 1.9.1 DOS介绍
      • 1.9.2 相对路径、 绝对路径
      • 1.9.3 常用的dos指令

1.Java 运行机制及运行过程

1.1 Java 核心机制-Java 虚拟机 [JVM java virtual machine] 

1)JVM 是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器,包含在 JDK 中.
2) 对于不同的平台,有不同的虚拟机。
3) Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行” [说明]
在这里插入图片描述在这里插入图片描述

1.2 JDK,JRE

  1. JDK 的全称(Java Development Kit Java 开发工具包)
    JDK = JRE + java 的开发工具 [java, javac,javadoc,javap 等]
    JDK 是提供给 Java 开发人员使用的,其中包含了 java 的开发工具,也包括了 JRE。安装了 JDK,就不用单独安装JRE了。
    2)JRE(Java Runtime Environment Java 运行环境)
    JRE = JVM + Java 的核心类库[类] ,即包括 Java 虚拟机(JVM Java Virtual Machine)和 Java 程序所需的核心类库等,如果想要运行一个开发好的 Java 程序, 计算机中只需要安装 JRE 即可。

1.3 JVM,JDK和JRE

JDK = JRE + 开发工具集(例如 Javac,java编译工具等)
JRE = JVM + Java SE 标准类库(java 核心类库)
如果只想运行开发好的 .class 文件 只需要 JRE
在这里插入图片描述

1.4 环境变量path

1.4.1 为什么要配置path

在这里插入图片描述

1.4.2 配置环境变量 path 的步骤

在这里插入图片描述表明JAVA_HOME指向jdk安装目录的位置
%JAVA_HOME%\bin表示会到JAVA_HOME指定的目录下面的bin目录去找相关的指令

1.4.3 环境变量配置细节说明

在这里插入图片描述
Adminnistrator表示对Adminnistrator这个用户生效的环境变量,系统变量表示对所有登录的用户都生效的环境变量。

1.5 Java运行

开发一个 test1.java 程序,可以输出hello world
注意以下指令要cd到源文件目录下进行

什么是编译

javac test1.java // 对该java文件进行编译->生成test1.class文件

1.有了java源文件,通过编译器将其编译成JVM可以识别的字节码文件。
2.在该源文件目录下,通过javac编译工具对test1.java文件进行编译。
3.如果程序没有错误,没有任何提示,但在当前目录下会生成一个test1.class文件,该文件被称为字节码文件,也是可以执行的java程序。

什么是运行

java test1 //运行class文件,写指令时不用加class,因为直接执行test1这个类

1.有了可执行的java程序(test1.class字节码文件)。
2.通过运行工具java.exe对字节码文件进行执行,将.class装载到JVM机执行。

在这里插入图片描述
在这里插入图片描述

注意事项

1.Java源文件以.java为扩展名,源文件的基本组成部分是类(class)。
2.一个源文件中只能有一个public类,其他类的个数不限,如果有一个public类了,那么文件名必须按照该类名命名。
3.Java应用程序的执行入口是main()方法,它有固定的书写格式:
public static void main(String[] args){…}
4.也可以将main写在非oublic类中,制定运行非public类,这样入口方法就是非public的main方法。(main入口可以有多个)

1.6 转义字符

在这里插入图片描述
java19里\r和\n好像是一样的了,可以先不用区分。java8中是汇到已输入字符的第一个字。System.out.println(“北京\r 天”); // 天京

一个\t对不齐可以试着多用几个\t

1.7 文档注释

在这里插入图片描述

/** 
 * @author xx
 * @version 1.0
 */

 //@后面写什么有规定不能乱写
 //敲了/** 后面会跟着出来剩下的

1.8 Java代码规范

在这里插入图片描述

自己用行尾比较多

1.9 DOS相关

1.9.1 DOS介绍

通过控制台操纵DOS系统完成相关指令
在这里插入图片描述

1.9.2 相对路径、 绝对路径

在这里插入图片描述

关于相对路径的返回上一级:windows是..\,inux系统用的是../
../../是返回上两级

1.9.3 常用的dos指令

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【一步一步学】ROS软路由设置代理IP教程

申明:本文仅针对国内L2TP/PPTP,适用于国内的游戏加速或学术研究,禁止一切利用该技术的翻墙行为。 今天和大家分享的是ROS软路由如何设置分流的问题,很多做过工作室的小伙伴肯定很熟悉。 简单来讲,ROS软路由就是普通的路…

数模转换 120dB,192kHz DAC 音频转换芯片DP7398 软硬件兼容替代CS4398

数模转换芯片(DAC)是一种将数字信号转换为模拟信号的集成电路。它通过将数字数据转换为相应的模拟电压或电流输出,实现了数字系统与模拟系统之间的接口和互联。 DAC具有许多优势,使其在各种应用领域得到广泛应用。首先&#xff0c…

接口测试 01 -- 基础与原理

接口概述 什么是接口 接口是计算机系统中不同组件之间进行交流和互动的一种方式。 在软件开发中,接口通常指的是一组定义了输入、输出、功能和规范的方法、函数或协议。接口定义了组件之间的通信协议,使得它们可以相互协作,实现特定的功能。…

23.实战演练--个人主页

<?xml version"1.0" encoding"utf-8"?> <manifest xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.android.com/tools"><applicationandroid:allowBackup"true"an…

【latex】参考文献排版前移,在最前面引用\usepackage{url}

【LaTeX】参考文献排版前移&#xff0c;在最前面引用\usepackage{url} 写在最前面完整解决步骤请教申申latex编译报错解决方案 写在最前面 参考文献从21开始排版前移了 解决方案&#xff1a;在最前面加一行 \usepackage{url}完整解决步骤 请教申申 申申yyds&#xff01;&am…

VsCode插件开发之ChatGPT实战

基础介绍&#x1f5e3;︎ VSCode 是采用了 Electron开发的跨平台的桌面应用&#xff0c;它兼容 Mac、Windows 和Linux&#xff0c;可以构建出三个平台的应用程序&#xff0c;基于VSCode开发的插件&#xff0c;同样也能在多个平台同时运行。 VSCode布局&#xff1a; 插件开发&…

IDEA插件中的postman,你试试

Postman是大家最常用的API调试工具&#xff0c;那么有没有一种方法可以不用手动写入接口到Postman&#xff0c;即可进行接口调试操作&#xff1f;今天给大家推荐一款IDEA插件&#xff1a;Apipost Helper&#xff0c;写完代码就可以调试接口并一键生成接口文档&#xff01;而且还…

JAVA方法及练习

目录 Java方法的定义以及调用 带返回值方法的定义和调用 方法的重载 方法大练习 练习1 练习2 练习3 练习4 Java方法的定义以及调用 方法练习package java方法;public class fangfa1 {public static void main(String[] args) {xuexi();}//定义一个方法public static vo…

UG全参数化建模

在UG全参数化建模中&#xff0c;可以先创建表达式再设计图形&#xff0c;也可先设计图形再关联表达式 UG表达式类型有&#xff1a;数字&#xff0c;字符串&#xff0c;布尔&#xff0c;整数&#xff0c;点&#xff0c;矢量&#xff0c;列表 数字&#xff1a;在数字类型中&…

【Python学习】Python学习20- 面向对象(3)

目录 【Python学习】Python学习20- 面向对象&#xff08;1&#xff09; 前言类属性与方法类的私有属性类的私有方法实例 单下划线、双下划线、头尾双下划线说明&#xff1a;参考 文章所属专区 Python学习 前言 本章节主要说明Python的面向对象的处理最后一部分。 类属性与方…

【已解决】fatal: Authentication failed for ‘https://github.com/.../‘

文章目录 异常原因解决方法 异常原因 在 Linux 服务器上使用git push命令&#xff0c;输入用户名和密码之后&#xff0c;总会显示一个报错&#xff1a; fatal: Authentication failed for https://github.com/TianJiaQi-Code/Linux.git/ # 致命&#xff1a;无法通过验证访问起…

.NET国产化改造探索(三)、银河麒麟安装.NET 8环境

随着时代的发展以及近年来信创工作和…废话就不多说了&#xff0c;这个系列就是为.NET遇到国产化需求的一个闭坑系列。接下来&#xff0c;看操作。 上一篇介绍了如何在银河麒麟操作系统上安装人大金仓数据库&#xff0c;这篇文章详细介绍下在银河麒麟操作系统上安装.NET8环境。…

MySQL入门篇:约束(主键,外键),多表查询(连接查询,联合查询,子查询)

目录 1.约束1.约束分类2.演示3.外键约束1.语法2.删除/更新行为 2.多表查询1.多表关系2.多表查询分类1.连接查询1.内连接2.外连接1.左外连接2.右外连接 3.自连接 2.联合查询(union)3.子查询1.标量子查询2.列子查询3.行子查询4.表子查询 1.约束 ①概念:约束是作用于表中字段上的规…

Python4Delphi安装及编译

1.下载或直接克隆python4delphi组件资源到指定目录,我这里下载到Components文件夹下,并对下载的文件夹进行了重命名为(P4D),重命名不是必须的 下载地址:https://github.com/pyscripter/python4delphi 2.安装 2.1在已下载的目录下进入Install文件夹,双击MultiInstaller.exe…

如何快速打造属于自己的接口自动化测试框架

1 接口测试 接口测试是对系统或组件之间的接口进行测试&#xff0c;主要是校验数据的交换&#xff0c;传递和控制管理过程&#xff0c;以及相互逻辑依赖关系。 接口自动化相对于UI自动化来说&#xff0c;属于更底层的测试&#xff0c;这样带来的好处就是测试收益更大&#xff…

Stream API 函数式编程 - 告别for循环,代码竟能写的如此优雅?

目录 一、Stream API 函数式编程 1.1、Stream 简介 a&#xff09;为什么引入 Stream&#xff1f;Stream 的出现就是为了让关于集合的操作更加简单&#xff1a; b&#xff09;Stream 的特性&#xff1a; c&#xff09;对stream的操作分为为两类&#xff0c;中间操作 和 结束…

训练DAMO-YOLO(damoyolo_tinynasL25_S.py)

文章目录 参考链接1 准备数据1.1 转为COCO格式1.2 指明数据路径 2 设置训练配置文件&#xff0c;在configs/damoyolo_tinynasL25_S.py进行如下两块修改2.1 关于训练参数的设置2.2 根据自己数据集设置 3 开始训练4 调用tools/eval.py进行测试5 训练时可能遇到的报错5.1 RuntimeE…

运维工具之iptables命令

运维工具之iptables命令 1.iptables防火墙介绍 ​ iptables其实并不是真正的防火墙&#xff0c;我们可以理解成一个客户端代理&#xff0c;用户通过 IPTables这个代理&#xff0c;将用户的安全设定执行到对应的"安全框架"中&#xff0c;这个"安全框架"才…

c语言 编译与链接

编译与链接 翻译环境和执行环境翻译环境1.1预编译1.2编译1.3汇编&#xff08;ASM&#xff09;2.链接 执行环境最后给大家附上一张关于本节知识内容的图供大家更好理解~ ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/522d488885ba44d99aa504d6b21c88d5.png) &…

LLaMa2 Chat gpt 大模型本地部署初体验

一直想在自己电脑或者测试环境随便找台服务器尝试部署一下“大模型”&#xff0c;但“大模型”对于内存和GPU的要求令人望而却步&#xff0c;层出不穷的各种术语也令人困惑&#xff0c;有点难以下手。 经过一段时间&#xff0c;在百度千帆大模型平台、讯飞星火大模型平台、魔搭…