第01章-Java语言概述
目录
1 常见DOS命令
常用指令
相对路径与绝对路径
2 转义字符
3 安装JDK与配置环境变量
JDK与JRE
JDK的版本
JDK的下载
JDK的安装
配置path环境变量
4 Java程序的编写与执行
5 Java注释
6 Java API文档
7 Java核心机制:JVM
1 常见DOS命令
DOS(
D
isk
O
perating
S
ystem
,磁盘操作系统)是Microsoft公司在Windows之前推出的一个单用户、单任务(只能执行一个任务)的操作系统。现在被Windows取代。
常用指令
- 进入和退回盘符/目录
操作
功能
磁盘盘符名称:
盘符切换。如E:切换到E盘
dir
列出当前目录下的文件和文件夹
cd 路径
切换到路径所指的目录。路径可以是绝对路径或相对路径,路径中可以指定单级目录或多级目录
cd /D 路径
跨盘符切换目录。如直接从E盘下的目录切换到F盘的下的目录,必须加\D
cd..
回退到上一级目录
cd\或cd/
回退到盘符目录
- 创建、删除
操作
功能
md 文件目录名
创建指定的文件目录。文件目录名可以是绝对路径
rd 文件目录名
删除指定的文件目录(目录内有数据,删除失败)。可以直接指定绝对路径
- 其它
操作
功能
cls
清屏
exit
退出命令提示符窗口
相对路径与绝对路径
- 相对路径:从当前目录开始定位,形成到目标目录的一个路径。
- 绝对路径:从根目录开始定位,形成的路径。
补图
2 转义字符
转义字符 | 功能 |
\t | 制表位,实现文本对齐 |
\n | 换行符,切换到下一行 |
\\ | 转义\,打印一个\ |
\' | 转义',打印一个' |
\" | 转义",打印一个" |
\r | 回车,不是换行。如打印文本时,输入\r后光标定位到行首并依次覆盖打印 |
3 安装JDK与配置环境变量
JDK与JRE
- JDK(Java Development Kit):指Java程序开发工具包,包含JRE和开发工具。
- JRE(Java Runtime Environment):指Java程序运行时所需环境,包含JVM和运行时需要的核心类库。
- JVM(Java Virtual Machine):指Java虚拟机。
小结:
JDK = JRE + 开发工具
JRE = JVM + Java SE标准类库
JDK的版本
Java 8是最受欢迎的版本,Java后续版本更新后,Java 8号称“你发任你发,我用Java8”。
版本 | 发行时间 | 说明 |
Java 8.0 | 2014.03.18 | Java 5.0以后变化最大的版本,是长期支持版本(LTS)。 |
Java 11.0 | 2018.09.25 | JDK安装包集成JRE,取消了JRE的独立,是长期支持版本(LTS) |
Java 17.0 | 2021.09 | 长期支持版本(LTS),Spring框架宣布从Java 8调整到Java 17 |
JDK的下载
- Java所有版本下载网址(Oracle公司官网):https://www.oracle.com/java/technologies/downloads/archive/
https://www.oracle.com/java/technologies/downloads/archive/
JDK的安装
笔者(爱喝胡辣汤)安装了两个版本JDK 8和JDK 17。JDK 17不需要再独立安装JRE。
- JDK8安装:傻瓜式安装,注意安装路径尽量不要包含中文或空格,安装目录E:\javaStudy\jdk\jdk1.8.0_131。
配置path环境变量
Path环境变量及其作用:在命令行使用javac.exe等工具时,任意目录下都可以找到该工具所在的目录(实际是环境变量保存了该工具所在的目录)。
配置环境变量:【我的电脑】右键 ->【属性】->【高级系统设置】->【环境变量】
- 方式1:直接在系统变量中的Path变量添加E:\javaStudy\jdk\jdk1.8.0_131\bin
- 方式2:先编辑变量JAVA_HOME,再将JAVA_HOME添加到Path
配置完成:
JDK17的安装:傻瓜式安装,集成JRE安装包,自动配置环境变量。安装目录E:\javaStudy\jdk\jdk-17。
4 Java程序的编写与执行
开发步骤:
Java程序开发三步骤:编写、编译、运行。
- 将Java代码编写到扩展名为.java的源文件中;
- 通过javac.exe命令对.java源文件进行编译,生成.class字节码文件;
- 通过java.exe命令对.class字节码文件进行运行。
开发工具:
- 文本开发工具:Notepad++,EditPlus,Sublime Test
- 集成开发工具:eclipse,IntelliJ IDEA
写第一个Java程序:F:\dream\javase\code\chapter01\Hello.java
// 1.class:关键字,表示一个类,后面跟着类名
class Hello{// 2.main()方法的格式是固定的,是程序的入口public static void main(String[] args){// 4.执行语句:从控制台输出数据的操作System.out.println("hello,world"); // 输出后换行System.out.print("hello,world"); // 输出后不换行}
}
// 3.Java程序严格区分大小写
- 一个.java源文件中只能有一个public类,其它类个数不限制,每个类都会生成一个.class文件。
- 如果源文件内有一个public类(也可以没有public类),则文件名必须与类名一致。
5 Java注释
注释是程序编写的思路说明,指明代码的作用,为什么这样写,提升文件个可读性。
Java注释的3种方式:
- 单行注释
//注释内容
- 多行注释
/* 注释内容1 注释内容2 */
- 文档注释(Java特有):文档注释内容可以被JDK提供的工具javadoc解析,生成一套以网页文件形式体现的程序的说明文档。使用语句javadoc -d 文件夹名 -标签1 -标签2 文件名.java,如javadoc -d mydir -author -version Comment.java
/**@author 指定java程序的作者@version 指定源文件的版本 */
注意:
- 单行注释和多行注释中的信息,不参与编译,生成的字节码文件中不包含单行注释和多行注释中的信息。
- 多行注释不允许嵌套使用。
演示:F:\dream\javase\code\chapter01\Comment.java
/*
这是多行注释1,多行注释不允许嵌套使用
单行注释和多行注释中的信息,不参与编译,生成的字节码文件中不包含单行注释和多行注释中的信息。
*//**
这是文档注释1
@author ahhlt
@version 1.0
*/public class Hello{public static void main(String[] args){//控制输出内容,这是单行注释System.out.println("hello,world");//System.out.print("hello,world");/**这是文档注释2*//*这是多行注释2*/}
}
javadoc解析以后,发现在网页中只能看到文档注释中的内容。单行和多行注释的内容看不到。
6 Java API文档
- API(Application Programming Interface,Java应用程序编程接口)是Java提供的基本编程接口。
- Java语言提供了大量的基础类,Oracle公司为这些基础类提供了相应的说明文档,用于开发者查询如何使用某些基础类/方法。
- Java API文档,JDK说明书、帮助文档。
- 下载API文档
-
- 在线看(英文版):Overview (Java SE 17 & JDK 17)
- 离线下载(英文版):Java Development Kit 17 Documentation
- 中文本地文档:F:\dream\jdk_api_1.8_google.CHM
7 Java核心机制:JVM
Java语言的核心优势就是跨平台性,Java语言编写的程序可以在不同操作系统上运行。
跨平台性原理:在需要运行java程序的操作系统上,安装一个Java虚拟机(JVM,Java Virtual Machine),由JVM负责Java程序在该系统上的运行。
在此,JVM充当一个翻译的身份,将Java程序的字节码文件翻译为对应操作系统可以执行的代码。
JVM的功能:是一个虚拟计算机,是Java程序运行时的必要环境。
相关文章:

第01章-Java语言概述
目录 1 常见DOS命令 常用指令 相对路径与绝对路径 2 转义字符 3 安装JDK与配置环境变量 JDK与JRE JDK的版本 JDK的下载 JDK的安装 配置path环境变量 4 Java程序的编写与执行 5 Java注释 6 Java API文档 7 Java核心机制:JVM 1 常见DOS命令 DOS(…...

Spring | Spring Cache 缓存框架
Spring Cache 缓存框架: Spring Cache功能介绍Spring Cache的Maven依赖Spring Cache的常用注解EnableCaching注解CachePut注解Cacheable注解CacheEvict注解 Spring Cache功能介绍 Spring Cache是Spring的一个框架,实现了基于注解的缓存功能。只需简单加一…...

雷达开发的基本概念fft,cfar,以及Clutter, CFAR,AoA
CFAR Constant False-Alarm Rate的缩写。在雷达信号检测中,当外界干扰强度变化时,雷达能自动调整其灵敏度,使雷达的虚警概率保持不变。具有这种特性的接收机称为恒虚警接收机。雷达信号的检测总是在干扰背景下进行的,这些干扰包括…...

什么是大数据测试?有哪些类型?应该怎么测?
随着目前世界上各个国家使用大数据应用程序或应用大数据技术场景的数量呈指数增长,相应的,对于测试大数据应用时所需的知识与大数据测试工程师的需求也在同步增加。 针对大数据测试的相关技术已慢慢成为当下软件测试人员需要了解和掌握的一门通用技术。…...
03-垃圾收集策略与算法
垃圾收集策略与算法 程序计数器、虚拟机栈、本地方法栈随线程而生,也随线程而灭;栈帧随着方法的开始而入栈,随着方法的结束而出栈。这几个区域的内存分配和回收都具有确定性,在这几个区域内不需要过多考虑回收的问题,因…...
1.AUTOSAR的架构及方法论
在15、16年之前,AUTOSAR这个东西其实是被国内很多大的OEM或者供应商所排斥的。为什么?最主要的原因还是以前采用手写底层代码+应用层模型生成代码的方式进行开发。每个供应商或者OEM都有自己的软件规范或者技术壁垒,现在提个AUTOSAR想搞统一,用一个规范来收割汽车软件供应链…...
Kotlin中的List集合
在Kotlin中,List集合用于存储一组有序的元素。List集合分为可变集合(MutableList)和不可变集合(List)。本篇博客将分别介绍可变集合和不可变集合,并提供相关的API示例代码。 不可变集合(List&a…...
微信小程序WeUI项目weui-miniprogram如何运行起来?
微信小程序WeUI项目weui-miniprogram如何运行起来? 解决方法: 1、下载 https://github.com/wechat-miniprogram/weui-miniprogram 2、在项目根目录weui-miniprogram-master执行以下命令安装依赖: npm install 3、继续执行编译命令: npm r…...

MapReduce编程:检索特定群体搜索记录和定义分片操作
文章目录 MapReduce 编程:检索特定群体搜索记录和定义分片操作一、实验目标二、实验要求及注意事项三、实验内容及步骤 附:系列文章 MapReduce 编程:检索特定群体搜索记录和定义分片操作 一、实验目标 熟悉MapReduce编程涉及的主要类和接口…...

pytorch 入门 (四)案例二:人脸表情识别-VGG16实现
实战教案二:人脸表情识别-VGG16实现 本文为🔗小白入门Pytorch内部限免文章 参考本文所写记录性文章,请在文章开头注明以下内容,复制粘贴即可 🍨 本文为🔗小白入门Pytorch中的学习记录博客🍦 参…...

数据结构--线性表回顾
目录 线性表 1.定义 2.线性表的基本操作 3.顺序表的定义 3.1顺序表的实现--静态分配 3.2顺序表的实现--动态分配 4顺序表的插入、删除 4.1插入操作的时间复杂度 4.2顺序表的删除操作-时间复杂度 5 顺序表的查找 5.1按位查找 5.2 动态分配的方式 5.3按位查找的时间…...

ChatGPT(1):ChatGPT初识
1 ChatGPT原理 ChatGPT 是基于 GPT-3.5 架构的一个大型语言模型,它的工作原理涵盖了深度学习和自然语言处理技术。以下是 ChatGPT 的工作原理的一些关键要点: 神经网络架构:ChatGPT 的核心是一个深度神经网络,采用了变种的 Tran…...

PostgreSQL 插件 CREATE EXTENSION 原理
PostgreSQL 提供了丰富的数据库内核编程接口,允许开发者在不修改任何 Postgres 核心代码的情况下以插件的形式将自己的代码融入内核,扩展数据库功能。本文探究了 PostgreSQL 插件的一般源码组成,梳理插件的源码内容和实现方式;并介…...
Android常见分区
一、Google官方标准分区 1. Boot分区 包含Linux内核和一个最小的root文件系统(装载到ramdisk中),用于挂载系统和其他的分区并开始Runtime。正如名字所代表的意思(注:boot的意思是启动),这个分区使Android设备可以启动…...
华为鸿蒙4谷歌GMS安装教学
目录 问题描述 参考视频 教学视频1 配套文档 教学视频2 资源包(配套视频1) 设备未经 play 保护机制认证 问题描述 很多国外的最新应用需要再Google商店才能下载比如ChatGPT 华为手机不支持 Google Play 服务的原因主要是由于谷歌服务框架(GMS)未…...

原型设计工具:Balsamiq Wireframes 4.7.4 Crack
原型设计工具:Balsamiq Wireframes是一种快速的低保真UI 线框图工具,可重现在记事本或白板上绘制草图但使用计算机的体验。 它确实迫使您专注于结构和内容,避免在此过程后期对颜色和细节进行冗长的讨论。 线框速度很快:您将产生更多想法&am…...

Nginx Proxy代理
代理原理 反向代理产生的背景: 在计算机世界里,由于单个服务器的处理客户端(用户)请求能力有一个极限,当用户的接入请求蜂拥而入时,会造成服务器忙不过来的局面,可以使用多个服务器来共同分担成…...

SparkSQL之LogicalPlan概述
逻辑计划阶段在整个流程中起着承前启后的作用。在此阶段,字符串形态的SQL语句转换为树结构形态的逻辑算子树,SQL中所包含的各种处理逻辑(过滤、剪裁等)和数据信息都会被整合在逻辑算子树的不同节点中。逻辑计划本质上是一种中间过…...
Ubuntu 安装 kubectl、kubeadm 和 kubelet
你需要在每台机器上安装以下的软件包: kubeadm:用来初始化集群的指令。 kubelet:在集群中的每个节点上用来启动 Pod 和容器等。 kubectl:用来与集群通信的命令行工具。 kubeadm 不能帮你安装或者管理 kubelet 或 kubectl&#…...
C语言获取文件长度
C语言获取文件长度 文章目录 C语言获取文件长度一、使用标准库方法二、使用Linux系统调用 一、使用标准库方法 #include <stdio.h>long get_file_size(const char * filename ){long size 0;FILE * fp fopen(filename,"rb");if( fp NULL ) {printf("o…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...

使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...
ArcPy扩展模块的使用(3)
管理工程项目 arcpy.mp模块允许用户管理布局、地图、报表、文件夹连接、视图等工程项目。例如,可以更新、修复或替换图层数据源,修改图层的符号系统,甚至自动在线执行共享要托管在组织中的工程项。 以下代码展示了如何更新图层的数据源&…...
Easy Excel
Easy Excel 一、依赖引入二、基本使用1. 定义实体类(导入/导出共用)2. 写 Excel3. 读 Excel 三、常用注解说明(完整列表)四、进阶:自定义转换器(Converter) 其它自定义转换器没生效 Easy Excel在…...

AI书签管理工具开发全记录(十八):书签导入导出
文章目录 AI书签管理工具开发全记录(十八):书签导入导出1.前言 📝2.书签结构分析 📖3.书签示例 📑4.书签文件结构定义描述 🔣4.1. 整体文档结构4.2. 核心元素类型4.3. 层级关系4.…...