当前位置: 首页 > news >正文

Java学习 (一) 环境安装

一、安装java环境

1、获取软件包

https://www.oracle.com/java/technologies/downloads/

.exe 文件一路装过去就行,最好别装c盘 ,我这里演示的时候是云主机只有C盘

2、配置环境变量

我的电脑--右键属性--高级系统设置--环境变量

 

在环境变量中添加如下配置

打开path  添加

%JAVA_HOME%\bin\

 

 我们在装java 17版本的时候会默认带一条C:\Program Files\Common Files\Oracle\Java\javapath的环境变量,但是当我们环境中存在不只一个版本的时候,这样使用不太方便,所以我们把我们添加的指定版本的指定版本置顶,这样后续装多个版本的时候,通过修改JAVA_HOME变量,来修改我们环境版本即可

3、检查版本

ctrl + r    输入 CMD

C:\Users\Administrator>java -version

返回

java version "17.0.11" 2024-04-16 LTS
Java(TM) SE Runtime Environment (build 17.0.11+7-LTS-207)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.11+7-LTS-207, mixed mode, sharing)

二、运行第一个程序

1、java程序开发过程

2、编写代码

idea先建一个项目

vi Main.java

class HelloChina{}

java程序是通过定义类名  class  + 名称来声明的

我们定义类后,会在java文件中显示出你定义的类名称是什么

3、编译代码

#切换到代码目录
cd C:\javacode\test1\src\   #通过javac编译源文件
javac Main.java

编译完后,会在代码文件旁边生成字节码文件.class

4、运行程序

java HelloChina

返回

PS C:\javacode\test1\src> java HelloChina
错误: 在类 HelloChina 中找不到 main 方法, 请将 main 方法定义为:public static void main(String[] args)
否则 JavaFX 应用程序类必须扩展javafx.application.Application

根据返回的信息,我们可以知道,我们定义的类中缺少main方法,main方法相当于我们程序的主入口,如果说我们编写  程序的时候相当于在造房子,那么main就是这所房子的大门

三、编写main方法

1、新增main方法

vi Main.java

class HelloChina{public static void main(String[] args){}
}

编译运行

 javac Main.javajava HelloChina

发现不报错了,但是也什么也没发生 ,我们希望他能给我们一些反馈的信息

2、添加打印文本

vi Main.java

class HelloChina{public static void main(String[] args){System.out.println("helloworld");}
}

我这里是idea去编写的,直接运行就行,不用每次都重新编译

注意

java程序严格区分大小写

同一个java源文件是支持声明多个class的

针对字节码文件对应的java类进行解释运行,要注意区分大小写

四、代码注释

单行注释 
//多行注释
/**/文档注释
/**@author@*/

案例1   单行与多行注释

class HelloChina{public static void main(String[] args){System.out.println("helloworld中国");}
}public class Main {public static void main(String[] args){//我是单行注释/*我是多行注释*/System.out.println("helloworld中国2");}
}

案例2  文档注释

如果我们想要用javadoc命令,那么需要将我们的类名声明为public
public class Main {

如果我们想要将类名前面添加public,那么类名的名称必须和文件名一致

class HelloChina{public static void main(String[] args){System.out.println("helloworld中国");}
}public class Main {public static void main(String[] args){/**这是main()方法 格式是固定的(文档注释)*/System.out.println("helloworld中国2");}
}

生成文档注释页面
javadoc -d mydoc -author -version Main.java

返回

PS C:\javacode\test1\src> javadoc -d mydoc -author -version Main.java
正在加载源文件Main.java... 
正在构造 Javadoc 信息... 
正在创建目标目录: "mydoc\" 
正在构建所有程序包和类的索引... 
标准 Doclet 版本 17.0.11+7-LTS-207 
正在构建所有程序包和类的树... 
正在生成mydoc\Main.html... 
Main.java:7: 警告: 没有注释 
public class Main { ^
Main.java:8: 警告: 没有注释 public static void main(String[] args){ ^
正在生成mydoc\package-summary.html... 
正在生成mydoc\package-tree.html...
正在生成mydoc\overview-tree.html...
正在构建所有类的索引...
正在生成mydoc\allclasses-index.html...
正在生成mydoc\allpackages-index.html...
正在生成mydoc\index-all.html...
正在生成mydoc\index.html...
正在生成mydoc\help-doc.html...
2 个警告

五、java api文档

api   是java提供的基本编程接口

java提供了大量的文档,字典,什么功能找什么api

六、java语言的特点和jvm功能

相关文章:

Java学习 (一) 环境安装

一、安装java环境 1、获取软件包 https://www.oracle.com/java/technologies/downloads/ .exe 文件一路装过去就行,最好别装c盘 ,我这里演示的时候是云主机只有C盘 2、配置环境变量 我的电脑--右键属性--高级系统设置--环境变量 在环境变量中添加如下配…...

**args和**kwargs是什么?

**args和 **kwargs是什么? **kwargs 是一个惯用的命名,指代一个字典(dictionary),其中包含了所有未在函数定义中明确指定的关键字参数。在 Python 中,函数的参数可以分为两类:位置参数&#xf…...

【STM32】GPIO简介

1.GPIO简介 GPIO是通用输入输出端口的简称,简单来说就是STM32可控制的引脚,STM32芯片的GPIO引脚与外部设备连接起来,从而实现与外部通讯、控制以及数据采集的功能。 STM32芯片的GPIO被分成很多组,每组有16个引脚。 最基本的输出…...

移植案例与原理 - utils子系统之KV存储部件 (1)

Utils子系统是OpenHarmony的公共基础库,存放OpenHarmony通用的基础组件。这些基础组件可被OpenHarmony各业务子系统及上层应用所使用。公共基础库在不同平台上提供的能力: LiteOS-M内核:KV(key value)存储、文件操作、定时器、Dump系统属性。…...

数据结构---排序算法

个人介绍 hello hello~ ,这里是 code袁~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹 🦁作者简介:一名喜欢分享和记录学习的…...

UE4 RPC进行网络同步

说明 基于UE本身提供的RPC同步机制 RPC远程过程调用允许客户端或服务器通过网络连接相互发送消息: 使用时需要注意: 1、必须从 Actor 上调用 2、Actor 必须被复制,注意勾选BP中Replicates,或使变量bReplicates true 3、注意如…...

HTML(6)——表单

目录 input标签基本使用 input标签占位 单选框radio 上传文件file 下拉菜单 文本域 label标签 按钮 input标签基本使用 input标签type属性值不同&#xff0c;则功能不同 <input type"..."> type属性值说明text文本框&#xff0c;用于输入单行文本p…...

Go基础编程 - 08 - 结构体

结构体 1. 自定义类型、类型别名1.1. 自定义类型1.2. 类型别名1.3. 类型定义和类型别名的区别 2. 结构体定义3. 结构体初始化4. 指针类型结构体5. 构造函数6. 方法和接收者6.1. 方法定义6.2. 方法调用6.3. 值方法和指针方法6.4. 指针方法使用场景6.5. 任意类型添加方法 7. 结构…...

基于Verilog表达的FSM状态机

基于Verilog表达的FSM状态机 1 FSM1.1 Intro1.2 Why FSM?1.3 How to do 在这里聚焦基于Verilog的三段式状态机编程&#xff1b; 1 FSM 1.1 Intro 状态机是一种代码实现功能的范式&#xff1b;一切皆可状态机&#xff1b; 状态机编程四要素&#xff1a;– 1.状态State&#…...

给一家银行做的数据中台系统架构方案书(DAMM)招投标用,虽然有内定潜规则,但是方案都是要的,不一定就是价格低就能中标,毕竟是上百万以上的单子

目录 概述需求分析系统架构DAMM设计思路数据治理数据安全实施计划维护和运营 1. 概述 1.1 项目背景 在数字化转型的浪潮中&#xff0c;银行业面临着越来越多的数据挑战与机遇。为了更好地利用数据资产&#xff0c;提升服务质量和运营效率&#xff0c;建立一个高效、灵活的数…...

【设计模式深度剖析】【6】【行为型】【中介者模式】

&#x1f448;️上一篇:迭代器模式 | 下一篇:观察者模式&#x1f449;️ 设计模式-专栏&#x1f448;️ 文章目录 中介者模式定义英文原文直译如何理解&#xff1f; 中介者模式的角色1. 中介者&#xff08;Mediator&#xff09;2. 具体中介者&#xff08;ConcreteMediato…...

金额转换但是接收对象类型未知时,金额转换公共方法囊括当对象为String\Integer\Number三种类型的转换方法

/** * deccription 金额转换方法 * param Object * value * return * return BigDecimal */ public BigDecimal getBigDecimal(Object value) { BigDecimal reValue new BigDecimal(0); if (value ! null) { …...

Commons-Collections篇-CC2链分析

前言 3.1-3.2.1版本中TransformingComparator并没有去实现Serializable接口&#xff0c;是不可以被序列化的&#xff0c;所以我们重新搭建一个4.0的具有漏洞的CC环境 CC2链主要使用的和CC4一样&#xff0c;但是区别在于CC2避免了使用Transformer数组&#xff0c;没有使用Insta…...

LeetCode 48.旋转图像

1.做题要求: 2.从此题我们可以看出规律为第几行要变为倒数第几列&#xff0c;所以我们最好先把二维数组存入一维数组中&#xff0c;然后先从最后一列遍历&#xff0c;把一维数组里的元素&#xff0c;依次等于遍历的元素即可: void rotate(int** matrix, int matrixSize, int*…...

Navicat导入json文件(json文件数据导入到MySQL表中)

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…...

避雷!又6本期刊被On Hold!ELSEVIER旗下影响因子高达10+SSCI上榜

【SciencePub学术】继《INFORMATION SCIENCES》被On Hold 之后&#xff0c;又新增3本SCIE期刊、3本SSCI期刊被列入On Hold名单。其中包含ELSEVIER旗下影响因子高达10的《RESOURCES POLICY》。 官方现在对期刊质量的管控越来越严格了&#xff0c;被标记为On Hold后的期刊中&…...

CSS 列表样式(ul)全面解析

CSS 列表样式是前端开发中常用的一种技术&#xff0c;用于定义无序列表&#xff08;ul&#xff09;的外观和行为。无序列表在网页布局和内容展示中扮演着重要角色&#xff0c;从导航菜单到内容清单&#xff0c;无所不在。通过CSS可以对无序列表的各个方面进行自定义&#xff0c…...

Python 库PySpark,一个超级强大的数据处理引擎

目录 01初识 PySpark 为什么选择 PySpark? 安装 PySpark 配置 PySpark 02基本操作 创建 RDD 基本 RDD 操作 03DataFrame 和 Spark SQL 创建 DataFrame 基本 DataFrame 操作 使用 Spark SQL 04机器学习与流处理 …...

UE4_材质_雨滴涟漪效果ripple effect_ben教程

学习笔记&#xff0c;不喜勿喷&#xff01;侵权立删&#xff0c;祝愿生活越来越好&#xff01; 雨水落下时会产生这些非常漂亮的同心环波纹&#xff0c;我们要做的第一件事是创建一个单个的圆环遮罩动画&#xff0c;我们希望环在开始的时候在中心很小&#xff0c;然后放大&…...

mac免费的ntfs软件哪个好 MAC读取NTFS硬盘格式

对于苹果用户来说&#xff0c;Mac电脑和移动硬盘已经成为日常工作中不可缺少的一部分&#xff0c;但有时我发现Mac打开移动硬盘只能读取无法写入&#xff0c;这是由于所连接的移动硬盘为NTFS格式。我们可以通过对硬盘格式化为Mac正常读写格式&#xff0c;或使用数据读写软件对N…...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外&#xff0c;K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案&#xff0c;全安装在K8S群集中。 具体可参…...

label-studio的使用教程(导入本地路径)

文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!

5月28日&#xff0c;中天合创屋面分布式光伏发电项目顺利并网发电&#xff0c;该项目位于内蒙古自治区鄂尔多斯市乌审旗&#xff0c;项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站&#xff0c;总装机容量为9.96MWp。 项目投运后&#xff0c;每年可节约标煤3670…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

拉力测试cuda pytorch 把 4070显卡拉满

import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试&#xff0c;通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小&#xff0c;增大可提高计算复杂度duration: 测试持续时间&#xff08;秒&…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比

在机器学习的回归分析中&#xff0c;损失函数的选择对模型性能具有决定性影响。均方误差&#xff08;MSE&#xff09;作为经典的损失函数&#xff0c;在处理干净数据时表现优异&#xff0c;但在面对包含异常值的噪声数据时&#xff0c;其对大误差的二次惩罚机制往往导致模型参数…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...