【跟我学Java就对了!!!】:helloworld
一.认识java
1.名称
J D K(java development kit):java开发者工具。
J R E(java run environment):java运行环境
J V M((java virtual machine):java虚拟机

当我们安装了JDK,我们就同时拥有了JRE和JVM。
二.hello world
1.运行
首先我们要知道控制台的调用:
win+r掉出来,然后在框框里输入cmd

第一步:编写文件
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5HbV5w3O-1622892408767)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605175645113.png)]](https://img-blog.csdnimg.cn/20210605192739674.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NDEzMDcxNA==,size_16,color_FFFFFF,t_70)
第二步:找到文件地址。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-P8QmEf9n-1622892408768)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605174201825.png)]](https://img-blog.csdnimg.cn/20210605192755632.png)
第三步:编译
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WbQzCmk9-1622892408769)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605175731359.png)]](https://img-blog.csdnimg.cn/20210605192820934.png)
编译之后会生成 字节码文件:![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tYBHA4QJ-1622892408771)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605174317613.png)]](https://img-blog.csdnimg.cn/20210605192841100.png)
我们可以看到字节码文件里面都是二进制数字,计算机的一些底层指令就是以二进制方式存在的。是计算机能理解的“语言”。
第四步:运行
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SdXwJgP2-1622892408772)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605175301618.png)]](https://img-blog.csdnimg.cn/20210605192856500.png)
运行的时候我们一定要注意文件名不能打错。
java跑在哪里的?
跑在j v m上,也就是在java的虚拟机上跑的。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c1D5Q0mq-1622892408772)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605180323957.png)]](https://img-blog.csdnimg.cn/2021060519291199.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NDEzMDcxNA==,size_16,color_FFFFFF,t_70)
2.代码剖析
在java当中有且只能有一个public类。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jqWTzWNN-1622892408773)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605172207876.png)]](https://img-blog.csdnimg.cn/20210605192925305.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NDEzMDcxNA==,size_16,color_FFFFFF,t_70)
类名必须和文件名相同。类名要采用首字母大写的形式(也叫大驼峰形式)。
(1)打印:
打印是有许多种形式的。
这是打印的三种形式
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bydK6ART-1622892408774)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605180451080.png)]](https://img-blog.csdnimg.cn/20210605192936566.png)
这是运行的结果:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SAbO3A8P-1622892408774)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605180408379.png)]](https://img-blog.csdnimg.cn/20210605192946815.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NDEzMDcxNA==,size_16,color_FFFFFF,t_70)
英文没问题,那中文呢?
我们把代码改成这个
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rKXtKBNd-1622892408775)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605181043759.png)]](https://img-blog.csdnimg.cn/20210605193001607.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NDEzMDcxNA==,size_16,color_FFFFFF,t_70)
企图编译:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NwIgKXfd-1622892408776)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605192402083.png)]](https://img-blog.csdnimg.cn/20210605193011280.png)
换种方式编译and运行:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6WiKpI3t-1622892408777)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605192419454.png)]](https://img-blog.csdnimg.cn/20210605193022862.png)
这是为啥呢?
我们先看一下报错:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e5f1JIKX-1622892408777)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605181342593.png)]](https://img-blog.csdnimg.cn/20210605193035383.png)
其实我们写代码的时候,建立的是文本文档,Windows有时候默认是以utf-8进行编码的,但我们的java其实是以GBK的方式进行编码的。因为前后编码方式不统一,所以会出现错误。
所以我们刚刚另一种方式其实是指定了编码的格式。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yFWk3Nsa-1622892408778)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605181613216.png)]](https://img-blog.csdnimg.cn/202106051930449.png)
如果用idea编码就不会有这种情况。
(2)main函数的参数
这个我们目前知道是一个字符串数组
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ufGY4ot5-1622892408778)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605191528153.png)]](https://img-blog.csdnimg.cn/20210605193056602.png)
那我们来尝试打印一下吧。
public class HelloWorld {
public static void main(String[] args) {
for(int i = 0;i<args.length;i++){
System.out.println(args[i]);
}
}
}
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LbVYGclS-1622892408779)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605191739725.png)]](https://img-blog.csdnimg.cn/20210605193107769.png)
然后我们会发现啥也没有,但string[] args真的没有用吗?
当我们以这种方式运行java文件的时候,我们就知道参数的意义了,是储存我们加的后缀。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Qx16nQaQ-1622892408780)(C:\Users\zzy\AppData\Roaming\Typora\typora-user-images\image-20210605192018971.png)]](https://img-blog.csdnimg.cn/20210605193120826.png)
所以我们叫string[] args为java运行时参数。

浙公网安备 33010602011771号