初识java——jdk?环境变量?及关于安装jdk的步骤

文章目录

  • JDK的安装
    • 在安装JDK时遇到的问题:
  • 背景知识
    • 一 什么是jdk
      • jdk简介
      • jdk文件详解:
        • 1 bin目录:
        • 2 lib目录:
        • 3 include目录
        • .exe文件是可执行的应用程序,这个我们都清楚,但.dll文件又是做什么的呢?
    • 二 环境变量
      • path环境变量:
      • 除path之外的其他环境变量


JDK的安装

https://www.bilibili.com/video/BV1ZW4y1c7LZ/
这是对应的视频,大家可以参考着安装学习

在安装JDK时遇到的问题:

除了在视频中可能遇到的问题之外,还有一种可能出现差错的情况:
当我们测试输入java -version的命令时,它不会显示java 命令不存在,而是没有反应
在这里插入图片描述
出现这个问题的原因是,我们之前下载过jdk,保留了java.exe,并且相应的之前环境变量没删除,
(在path变量中,系统查找路径的顺序是从上到下的)并且之前的路径在新的路径之上
所以导致执行这个命令,但是不出内容。
解决 这个问题的方式就是删除掉path中之前的路径,最好也把之前剩余的jdk部分清理干净就好了!

背景知识

一 什么是jdk

jdk简介

建议大家看完下面的详解后,再来看这个简介!

jdk的全称是Java Development Kit 意为java开发工具包,这是每一个java语言开发者所必需的。
jdk中包含了java编译器(javac),java虚拟机(JVM)等基本开发工具,以及java标准库(Java Standard Library):用于Java程序开发的各种类与方法(类似于c语言中库函数的作用),还有用于开发各种类型应用程序所需的API。
除了基本的开发工具与标准库外,jdk还提供了一些附加工具比如:JavaDoc(用于生成API文档)、Java Debugger(用于调试Java程序)、Java Mission Control(用于性能监控和故障诊断)等。

jdk文件详解:

我按照的是jdk17,所以就按此版本讲解:
当我们下载好jdk之后,打开文件:

在这里插入图片描述

1 bin目录:
 该目录用于存放一些可执行程序
 如:(1)  java编译器

在这里插入图片描述

    (2) java 运行工具

在这里插入图片描述

   (3)打包工具

在这里插入图片描述

 (4)文档工具

在这里插入图片描述

 还有一些其他的应用程序,这里不再一一列举,最为主要的是javac.exe
 与java.exe程序,
 javac.exe是java编译器,用于将编写好的java文件编程成java字节码文件(可执行的java程序)。java源文件的扩展名为.java,如 HelloWorld.java 编译运行后的java字节码文件的扩展名为.class 如 HelloWorld.class
 java.exe是java运行工具,它会启动一个java虚拟机(JVM)进程,java虚拟机相当于一个虚拟的操作系统,专门负责运行由javac.exe生成的字节码文件!
2 lib目录:
 lib是library的简写,用于存放java提供的类与方法

在这里插入图片描述

在lib目录中src.zip文件用于存放JDK中的核心类的源代码
3 include目录
由于jdk即开发工具本身是由c/c++开发的,所以在引用时需要启动一些c语言的头文件,此目录就是用来存放这些头文件的。(.h文件)

在这里插入图片描述

.exe文件是可执行的应用程序,这个我们都清楚,但.dll文件又是做什么的呢?
.dll文件是动态链接库(Dynamic Link Library)的简写,
它是一种在windows系统中常见的**文件类型**,
.dll文件中包含了一系列可程序调用的函数与资源,可被多个程序共享使用
其作用主要有以下几个方面:
1  代码重用:.dll文件中包含了一些常用的代码与函数,其他程序调用时,可避免重复编写相同的代码。(这个和c语言中库函数的包含功能大体相同)
2  动态链接:程序运行时,可通过动态链接的方式调用.dll文件中的资源与函数
(也就是我们在执行bin目录下的.exe文件时,可链接调用bin目录下的.dll文件)
(相比于静态链接,动态链接可以减小程序的体积,提高内存的利用率。)
3  功能扩展:在加载.dll文件后,可以额外扩展程序的功能还有特性(所以目录中.dll文件右侧有“应用程序扩展”的标记)
4  系统资源访问:.dll 文件还可以提供对系统资源访问的接口,(即可以通过.dll文件中的函数来访问系统资源,比如硬件设备,操作系统功能等),这样其他程序就可以通过调用.dll文件中的函数来实现对这些资源的操作。

二 环境变量

环境变量是在操作系统之上设置的变量。

在这里插入图片描述

环境变量分为用户变量和系统变量,一个电脑中可以有多个用户,针对单个用户设置的变量则创建在用户变量上,所有的用户均可使用的变量创建在系统变量上!

path环境变量:

path环境变量用于存放可执行文件的路径,用于操作系统去查找对应的文件,当我们在命令行中(即控制台程序中)输入一个命令,操作系统就会根据path环境变量中存放的路径去查找相应的文件。

除path之外的其他环境变量

其他环境变量用于存放系统与应用程序的各种配置信息。

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

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

相关文章

Advanced RAG 04:重排序(Re-ranking)技术探讨

编者按:重排序(Re-ranking)技术在检索增强生成(Retrieval Augmented Generation,RAG)系统中扮演着关键角色。通过对检索到的上下文进行筛选和排序,可以提高 RAG 系统的有效性和准确性&#xff0…

查找算法之顺序查找

目录 前言一、查找算法预备知识二、顺序查找三、总结3.1 查找性能3.2 适用场景 前言 查找算法是一种用于在数据集合中查找特定元素的算法。在计算机科学中,查找算法通常被用于在数组、链表、树等数据结构中查找目标元素的位置或者判断目标元素是否存在。 查找算法的…

爱尔兰启动其首个量子技术国家战略“量子 2030”

内容来源:量子前哨(ID:Qforepost) 文丨王珩 排版丨沛贤 800字丨5分钟阅读 摘要:爱尔兰推出了“量子 2030”,这是爱尔兰第一个量子技术国家战略。“量子 2030”将爱尔兰量子技术界的努力重点放在爱尔兰可以…

电脑文件加密软件有哪些?文件加密软件哪个好?

某企业的一位员工因不慎将包含敏感客户数据的电脑丢失,导致企业面临巨大的法律风险和经济损失。 这一事件凸显了电脑文件加密的必要性。 如果该企业事先采用了文件加密软件对敏感数据进行保护,即使电脑丢失,攻击者也无法轻易获取到文件内容…

STL_List与萃取

List 参考文章: https://blog.csdn.net/weixin_45389639/article/details/121618243 List源码 List中节点的定义&#xff1a; list是双向列表&#xff0c;所以其中节点需要包含指向前一节点和后一节点的指针&#xff0c; data是节点中存储的数据类型 template <class _Tp&g…

HCIP——MPLS(笔记)

MPLS--多协议标签交换技术 包交换 数据组成数据包&#xff0c;之后&#xff0c;在各个网络节点中不断传递&#xff0c;最终到达目标。包交换转发效率不高的问题所在&#xff1a;1&#xff0c;在整个包交换的过程中&#xff0c;需要先查询路由表之后再查看ARP缓存表两张表来完…

Java:内部类

目录 1.内部类介绍2.实例内部类3.静态内部类4.局部内部类5.匿名内部类 1.内部类介绍 当一个事物的内部&#xff0c;还有一个部分需要一个完整的结构进行描述&#xff0c;而这个内部的完整的结构又只为外部事物提供服务&#xff0c;那么这个内部的完整结构最好使用内部类。在 J…

KDD‘23 | AlphaMix: 高效专家混合框架(MoE)显著提高上证50选股表现

KDD23 | AlphaMix: 高效专家混合框架&#xff08;MoE&#xff09;显著提高上证50选股表现 原创 QuantML QuantML 2024-04-18 09:17 上海 Content 本文提出了一个名为AlphaMix的新型三阶段专家混合&#xff08;Mixture-of-Experts&#xff0c;MoE&#xff09;框架&#xff0c;…

信息流广告大行其是,微博回望“原生”的初心

摘要&#xff1a;有流量的地方&#xff0c;就当有原生信息流广告 信息流广告&#xff0c;自2006年Facebook推出后就迅速火遍全球数字营销界&#xff0c;被誉为实现了广告主、用户、媒体平台三赢。特别是随着OCPM/OCPX大放异彩&#xff0c;信息流广告几乎成为广告主的必选项&…

达梦数据库的AWR报告

达梦数据库的AWR报告 数据库快照是一个只读的静态的数据库。 DM 快照功能是基于数据库实现的&#xff0c;每个快照是基于数据库的只读镜像。通过检索快照&#xff0c;可以获取源数据库在快照创建时间点的相关数据信息。 为了方便管理自动工作集负载信息库 AWR&#xff08;Auto…

数据结构实验(二)

单链表的基本操作 一、总的设计思路(c++实现) 1、首先定义一个包含name、gender、student_number、hobbies的学生信息结构体。 2、接着一一写出:链表初始化(initialize)函数、后插法插入(insert)函数、打印信息(output)函数、对链表结点进行排序(sortList)函数、…

【Qt 学习笔记】Qt常用控件 | 按钮类控件 | Check Box的使用及说明

博客主页&#xff1a;Duck Bro 博客主页系列专栏&#xff1a;Qt 专栏关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ Qt常用控件 | 按钮类控件 | Check Box的使用及说明 文章编号&#xff…

华为ensp中MSTP多网段传输协议(原理及配置命令)

作者主页&#xff1a;点击&#xff01; ENSP专栏&#xff1a;点击&#xff01; 创作时间&#xff1a;2024年4月22日15点29分 在华为ENSP中&#xff0c;MSTP&#xff08;多段传输协议&#xff09;是重要的生成树协议&#xff0c;它扩展了STP&#xff08;生成树协议&#xff09…

跨境电商日报:Tk使用时长全美第一;Shopee发布Z世代购物调查报告

# 平台资讯 PART 1 电商 Shopee调查&#xff1a;六成Z世代购物者看重平台功能多样性 日前&#xff0c;据外媒报道&#xff0c;Shopee发布了《在数字时代吸引Z世代购物者》调查报告。数据显示&#xff0c;60%的Z世代购物者优先考虑搜索简单、具有比较功能和有用评论的平台。据…

代码随想录算法训练营第三十六天|435. 无重叠区间,763.划分字母区间,56. 合并区间

题目&#xff1a;435. 无重叠区间 给定一个区间的集合 intervals &#xff0c;其中 intervals[i] [starti, endi]。返回需要移除区间的最小数量&#xff0c;使剩余区间互不重叠。 题目链接/讲解链接&#xff1a; https://programmercarl.com/0435.%E6%97%A0%E9%87%8D%E5%8F%A0…

Swin Transformer 浅析

Swin Transformer 浅析 文章目录 Swin Transformer 浅析引言Swin Transformer 的网络结构W-MSA 窗口多头注意力机制SW-MSA 滑动窗口多头注意力机制Patch Merging 图块合并 引言 因为ViT无法实现CNN中的层次化构建以及局部信息&#xff0c;由此微软团队提出了Swin Transformer来…

Linux磁盘及读写数据原理/Raid技术/硬软raid及企业案例/磁盘分区环境搭建/格式化磁盘系列-12213字

高薪思维&#xff1a; 怎么才能一直去坚持下去&#xff1f; 1.做这件事情的好处&#xff0c;对自己一直去放大。 2.不做的坏处&#xff0c;并放大 3.学习痛苦&#xff1f;还是去上班&#xff08;餐饮、外卖痛苦&#xff1f;&#xff09; 用比学习更痛苦的事情&#xff0c;去对抗…

Java后端中如何随意接收参数

目录 一、参数名相同 二、参数名不同&#xff0c;使用RequestParam注解 大概访问流程是&#xff1a;先访问test控制器&#xff0c;test控制器跳转到index页面&#xff08;此时index页面收到了test控制器传来的数据&#xff09;&#xff0c;然后在index页面跳转到t5控制器&…

【YOLOv9】实战二:手把手教你使用TensorRT实现YOLOv9实时目标检测(含源码)

‍‍&#x1f3e1;博客主页&#xff1a; virobotics(仪酷智能)&#xff1a;LabVIEW深度学习、人工智能博主 &#x1f384;所属专栏&#xff1a;『LabVIEW深度学习实战』 &#x1f4d1;上期文章&#xff1a;『【YOLOv9】实战一&#xff1a;在 Windows 上使用LabVIEW OpenVINO工具…

Java代码基础算法练习-分段函数求值-2024.04.21

任务描述&#xff1a; 有一个函数&#xff0c;写一段程序&#xff0c;输入x&#xff0c;输出y。 任务要求&#xff1a; 代码示例&#xff1a; package April_2024;import java.util.Scanner;public class a240421 {public static void main(String[] args) {Scanner sc new S…