Java基础学习笔记三

news2025/2/26 8:16:21

环境变量CLASSPATH

  1. classpath环境变量是隶属于java语言的,不是windows操作系统的,和PATH环境变量完全不同
  2. classpath环境变量是给classloader(类加载器)指路的
  3. java A 。执行后,先启动JVM, JVM启动classloader,classloader去硬盘上通过classloadepath去找.class文件。找到则执行,找不到则报错
  4. 如果classpath没有配置的话,默认从当前路径下找class字节码文件
  5. 如果classpath配置了,例如配置到桌面,那么classloader只能去桌面上找classpath文件
  6. 如果classpath配置为 claspath= .;C:\User\Administrator\Desktop 则先让类加载器在当前目录下寻找,如果找不到去 C:\User\Administrator\Desktop找

关于编译时的乱码问题

当java源文件中有中文时,由于EditPlus工具默认是简体中文GBK
jdk21使用默认UTF-8的编码方式进行编译
编码不一致了所以乱码了

解决方式

  1. 第一种:java -encoding GBK HelloWorld2.java
  2. 第二种: 将editplus的字符集修改为UTF-8

不管哪一种,都是让两边的字符编码方式一致


java注释

//单行注释

/*
多行注释
多行注释
多行注释
*/


/**
*javadoc 注释
*javadoc 注释
*javadoc 注释
*编写在这里的注释信息,可以被javadoc命令解析提取并生成到帮助文档中
*/

Javadoc是Java编程语言中的一种工具,用于生成API文档。它可以从源代码中提取特定的注释,并生成详细的文档,用于描述类、接口、方法、字段等程序元素的用途和用法。

使用Javadoc可以为你的Java代码生成清晰、易读的文档,以便其他开发者能够理解和正确使用你的代码库。生成的文档通常包含类的层次结构、方法和字段的详细描述,参数和返回值的说明,异常的抛出情况,以及示例代码等。

以下是使用Javadoc的一般步骤:

  • 在Java源代码中编写注释:使用特定的注释标记(/** … */)在类、方法、字段等程序元素的前面编写注释。注释可以包含描述、参数说明、返回值说明、异常说明等。注释应该清晰、简明地描述程序元素的用途和使用方法。

  • 运行Javadoc工具:使用命令行或集成开发环境(IDE)中的集成功能,运行Javadoc工具来处理源代码并生成文档。Javadoc工具通常是作为JDK的一部分提供的。

  • 生成API文档:Javadoc工具会解析源代码中的注释,并根据注释的内容生成API文档。生成的文档通常以HTML格式呈现,并包含类、方法、字段等程序元素的详细说明。文档可以包含索引、链接、继承关系图等辅助功能,以帮助开发者更好地浏览和理解代码库。

  • 查看和发布文档:生成的API文档可以在浏览器中直接查看,也可以发布到Web服务器上以供他人访问。开发者可以通过浏览文档来了解代码库的结构和使用方式,并参考文档中的说明来正确使用代码库。

以下是一些常用的Javadoc命令选项:

-d :指定生成文档的输出目录。
-sourcepath :指定源代码文件的查找路径。
-classpath :指定编译后的类文件的查找路径。
-subpackages :递归包含指定的包及其子包中的所有类。
-exclude :排除指定的包及其子包中的类。
-author:在生成的文档中包含作者信息。
-version:在生成的文档中包含版本信息。
-private:包括私有成员在内的所有成员都会被文档化。


关于一个程序的解析

/**
*HelloWorld2程序是一个问世程序,演示了中文乱码问题
*@author 徐漠漠
*@version 1.0
*@since 1.0
*/

public class HelloWorld2
{	/**
	*这是main方法,程序的入口,程序就是从这里进来开始执行的
	*@param args 这个main方法的参数
	*/

	//1.这是main方法,也叫做主方法
	//2.main方法是JVM规定的,固定写法,程序就是从这个位置进来执行的,是程序的入口
	//3. 对于main方法来说能修改的只有args这个变量名
	//4.public表示公开的
	//5.static 静态的
	//6.void表示main方法执行结束后不返回任何数据
	
	public static void main(String[] args){
		//方法体
		//方法体中的代码有执行顺序从上到下依次执行法
		System.out.println("徐漠漠最棒");

		//没有ln是不换行的
		System.out.print("hj");
		System.out.print("123");
		System.out.print("hjhh");
	}


	//类体
	//类体中不能直接编写Java语句
}

在这里插入图片描述

有以下程序

/*
	1. 一个Java源文件中可以定义多个class
	2. 编译之后,一个class就会对应生成一个字节码文件
	3. 如果一个类是public的,类名必须和源文件名保持一致
	4. public的类可以没有。如果有的话也只允许有一个
	5. 每个类中都可以编写入口main方法
*/

class X
{
	public static void main(String[] args){
		System.out.println("x执行过了");
	}
}

class Y
{

}
class Z
{

}

javac编译后生成了三个类
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

反射 Reflection

反射 反射的概念 反射机制允许程序在执行期借助于ReflectionAPI取得任何类的内部信息(比如成员变量,构造器,成员方法等等),并能操作对象的属性及方法。反射在设计模式和框架底层都会用到加载完类之后,在堆中就产生了一个Class类型…

集合Python开发环境搭建

目录 PyCharm搭建Python环境_非虚拟环境 Pycharm的优点 Pycharm的缺点 Pycharm的下载 Pycharm环境配置 VSCode搭建Python环境_非虚拟环境 VSCode的优点 VSCode的缺点 VSCode的下载 VSCode环境配置 虚拟环境使用 虚拟环境介绍 虚拟环境安装 创建虚拟环境 切换虚拟…

使用 Vue CLI 创建一个 Vue2 项目

全局安装 Vue CLI 参考官网 Vue CLI,安装命令如下 npm install -g vue/cli 目前 Vue CLI 的最新版本为 v5.0.8 创建 Vue2 项目 在希望创建项目的目录下打开命令行,键入命令 vue create my-project 其中 my-project 更改为自己需要的项目名 随后&a…

R语言程序设计(零基础速通R语言语法和常见函数的使用)

目录 1.Rstudio中的一些快捷键 2.R对象的属性 3.R语言中常用的运算符​编辑 4.R的数据结构 向量 如何建立向量? 如何从向量里面提取元素? 矩阵 如何建立矩阵? 如何从矩阵里面提取元素? 数据框 如何建立数据框&#xf…

行业逆行者倪张根的十数年

在2015年的一场发布会上,梦百合家居董事长倪张根接受完全国80多家媒体的群访后,突然起身深深鞠了一躬,把在场的记者们吓了一跳。 对此,倪张根直接、坦率地承认“就是想讨好在座的各位”,这种不够柔和、不够世故的直球表达方式,在这个向来讲究中庸的社会,有种让人避之不及却又惊…

idea maven 项目融合

背景 :项目A 和项目B 是两个独立的多模块项目,项目A 和项目B ,均为独立的数据源 。其中项目B 有两个数据原。 需要将项目B 以多模块的方式融合进项目A。 解决版本。建立项目C,只含有pom的,空项目,项目A和项…

【经验分享】Wubuntu------体验Windows和Ubuntu的结合体

【经验分享】Wubuntu------体验Windows和Ubuntu的结合体 最近看到有一款Wubuntu的文章,对于习惯使用windows操作系统,又不熟悉ubuntu系统的程序员小白来说,可以说是福音了。目前的Wubuntu兼容性可能还有一点问题,如果再迭代几次的…

nodejs 使用express插件multer文件上传,接收不到文件的bug

把路径改成绝对路径即可 改成 temp是你想上传到文件夹的路径,一般是在项目根目录下

pinia的使用vue3

1.安装pinia pinia持久化工具pinia-plugin-persist npm install pinia pinia-plugin-persist -D -S2.使用pinia main.js import store from "//store"; app.use(store);index.js import { createPinia } from "pinia"; import piniaPluginPersist fro…

攻防世界新手模式例题(Web)

PHP2 首先我们查看页面,查看前端代码 发现均没有什么有效信息,由题目可知,此问题与php相关,于是我们可以看一下他的index.php文件 查看时用?index.phps 补充知识:phps文件就是php的源代码文件,通常用于…

【超图】白模数据如何与抽屉效果结合,展示白膜内部结构

作者:taco 最近在支持的过程中,客户在看别的项目中,发现白模是可以抽插的。而非单独一个白色模型建筑。那么如何使用SuperMap产品来实现抽插的效果呢?本篇文章结合SuperMap iDesktopX产品以及SuperMap iClient for Cesium产品进行…

工业级5g路由器使用案例(5g智慧安防解决方案)

​项目背景: 现代化智慧安防需要满足远程可视化监控、设备联网管理、数据加密传输等多重需求,对通信网络的带宽、时延、安全性等提出了很高要求。业内急需一款高可靠、高性能、易管理的通信网关设备,来确保安防系统的顺利运行。 安装部署: SR800-D路由器采用紧凑型全金属机箱…

【Linux进阶之路】HTTPS = HTTP + S

文章目录 一、概念铺垫1.Session ID2.明文与密文3.公钥与私钥4.HTTPS结构 二、加密方式1. 对称加密2.非对称加密3.CA证书 总结尾序 一、概念铺垫 1.Session ID Session ID,即会话ID,用于标识客户端与服务端的唯一特定会话的标识符。会话,即客…

后端系统开发之——接口参数校验

今天难得双更,大家点个关注捧个场 原文地址:后端系统开发之——接口参数校验 - Pleasure的博客 下面是正文内容: 前言 在上一篇文章中提到了接口的开发,虽然是完成了,但还是缺少一些细节——传入参数的校验。 即用户…

TCP - 传输控制协议

TCP - 传输控制协议 是一种面向连接的可靠传输协议。 特点: TCP是面向连接(虚连接)的传输层协议。 每一条TCP连接有且只能有两个端点。 可靠、有序、无丢弃和不重复。 TCP协议提供全双工通讯。 发送缓存 存放发送方TCP准备发送的数据。T…

一键截取万像:视频快照工具的终极指南

在这个视频时代,我们不可能手动截取每一个视频的特定帧作为缩略图或参考用途。这不仅费时费力,而且效率低下。但是,有了Python和强大的库,您可以创建一个自动化工具,在几秒钟内从视频文件中获取缩略图快照。 在本文中,我将分享一个Python脚本,它使用wxPython和OpenCV库,让您只…

基于有限状态机开发健壮的Nodejs/TCP客户端

有限状态机是一种数学计算模型,它描述了在任何给定时间只能处于一种状态的系统的行为。形式上,有限状态机有五个部分: 初始状态值 (initial state)有限的一组状态 (states)有限的一组事件 (events)由事件驱动的一组状态转移关系 (transition…

Foxmail邮箱空间不够或邮件数太多

Foxmail邮箱空间不够或邮件数太多 解决办法: ①远程管理,删除远程邮件 ②删除本地邮件并同步服务器 ①远程管理,删除远程邮件 ②删除本地邮件并同步服务器 打开设置》》高级 此外,为了方便管理邮件可以设置过滤器 欢迎各位大佬…

51单片机LED8*8点阵显示坤坤跳舞打篮球画面

我们作为一名合格的 ikun,专业的小黑子,这个重要的知识必须学会。 先看效果: 51LED点阵_鸡你太美 这里我们首先要用到延时函数Delay: void Delay(unsigned int xms) {unsigned char i, j;while(xms--){ i 2;j 239;do{while (-…

物联网和工业物联网的区别——青创智通

工业物联网解决方案-工业IOT-青创智通 物联网(IoT)和工业物联网(IIoT)作为现代科技的重要分支,正在逐渐渗透到我们的日常生活和工业生产中。它们的应用范围广泛,涵盖了从智能家居到自动化工厂的多个领域。…