NO.A.0004——day01——HelloWorld入门程序、变量、
一、第一个Java程序:
Java开发程序的三步:编写、编译、运行。

文件名必须是 .java 后缀
javac.exe : 编译器
java.exe : 解释器
二、编写第一个Java程序:
1、在 d:\day01 目录下新建文本文件, 完整的文件名为HelloWorld.java,其中文件名为 HelloWorld,后缀必须为 .java
2、用记事本打开文件中写入代码:HelloWorld.java
public class HelloWorld {
public static void main(String[] args){
System.out.println("Hello,World!!!");
}
}
// 第一行的第三个单词必须和所在的文件名称完全一样,大小写也要一样
// public class 后面代表定义一个类的名称,类是Java当中所有源代码的基本组织单位。
public class HelloWorld {
// 第二行的内容是万年不变的固定写法,代表main方法
// 这一行代表程序执行的起点
public static void main(String[] args) {
// 第三行代表打印输出语句(其实就是屏幕显示)
// 希望显示什么东西,就在小括号当中填写什么内容
System.out.println("Hello, World!!!");
}
}
注: 文件名必须是HelloWorld,保证文件名和类的名字是一致的,注意大小写。
每个字母和符号必须与示例代码一模一样。
需讲Java源文件编译成JVM可以看懂的字节码文件。
3、编译Java源文件。
在DOS命令行中,进入Java源文件目录,使用javac命令进行编译。
4、将你cmd窗口中当前我的位置切换到源代码文件所在的位置。
javac java源文件名.后缀名
javac HelloWorld.java 会生成一个.class文件
java HelloWorld 不用加任何后缀,实则运行的是.class文件。

5、源代码修改后必须重新编译.java文件,重新生成.class文件。
6、 编译和运行是两回事:
- 编译:是指将我们编写的java源文件翻译成JVM认识的class文件, 在这个过程中,javac编译器会检查我们所写的程序是否有错误,有错误就会提示出来。如果没有错误就会编译成功。
- 运行:是指将class文件交给JVM去运行,此时JVM就会执行我们编写的程序了。
8、关于main方法:
三、代码解释:
1、main方法:
- 称为主方法,写法是固定格式不可以更改。main方法是程序的入口点或起始点,无论我们编写多少程序,JVM在运行的时候,都会从main方法这里开始执行。
2、添加注释comment
- 注释:就是对代码的解释和说明,其目的是让人们能够更加轻松的了解代码。为代码添加注释,是十分必须要的。它不影响程序和运行;Java中有单行注释和多行注释。
- 单行注释以 //开头 换行结束
- 多行注释以 /* 开头 以 */ 结束
//单行注释 这一行是注释信息(对程序不受影响)
//第一行的第三个单词必须和所有的文件名称完全一样,大小写也要一样。
// Pubic class 后面代表定义一个类的名称,类是Java当中所有源代码的基本组织单位。
Public class HelloWorld { //注释信息
//第二行的内容是万年不变的固定写法,代表main方法
//这一行代表程序执行的起点
public static void main (String[] args) {
//第三行代表打印输出语句(其实就是屏幕显示)
//希望显示什么东西,就在小括号当中填写什么内容。
/*
多行注释无论这里是多少行
只要是在这个范围之内都算多行注释
*/
/* 这一行没有进行换行,也照样是注释(区块注释) */
System.out.println("Hello World!");
}
}
3、关键字keywords
- 关键字:是指在程序中,Java已经定义好的单词。具有特殊含义。
- HelloWorld案例中,出现的关键字有public、class、static、void等,这些单词已经被java定义好,全部都是小写字母,notepad++中颜色特殊。
12345@qq.com
javaitcast@163.com
_______@163.com
abc@163.com
abc123@163.com
尼古拉斯·赵四
nigulasi@zhaosi@itcast.cn
@是电子邮箱当中有特殊含义的、被保留的、不能随意使用的字符。
这样的字符被称为关键字。
关键字的特点:
1. 完全小写的字母。
2. 在增强版的记事
实例一:
@是电子邮箱当中有特殊含义的,被保留的,不能随意使用的字符。
关键字的特点:
完全小写的字母。
在增强版的记事本当中(notepad++ )有特殊颜色。
4、标识符:
是指在程序中,我们自己定义的内容。比如类的名字、方法名字和变量名字等。 都是标识符。
HelloWorld案例中,出现的标识符有类的名字HelloWorld。
- 命名规则:硬性要求
标识符可以包含 英文字母26个(区分大小写)、0~9数字、$美元符号和_下划线
标识符不能以数字开头。
标识符不能是关键字
- 命名规范:软性要求
类名规范:首字母大写,后面每个单词首字母大写(大驼峰式)。HelloWorld
变量名规范:首字母小写,后面每个单词首字母大写(小驼峰式)。HelloWorld
- 方法名规范:同变量名。
四、变量:
1、常量:Demo01Const.java
/*
常量:在程序运行期间,固定不变的量。
常量的分类:
1. 字符串常量:凡是用双引号引起来的部分,叫做字符串常量。例如:"abc"、"Hello"、"123"、""
可以没有内容;
2. 整数常量:直接写上的数字,没有小数点。例如:100、200、0、-250
3. 浮点数常量:直接写上的数字,有小数点。例如:2.5、-3.14、0.0
4. 字符常量:凡是用单引号引起来的单个字符,就做字符常量。例如:'A'、'b'、'9'、'中'必须有内容;
5. 布尔常量:只有量中取值。true、false。
6. 空常量:null。代表没有任何数据。
*/
public class Demo01Const {
public static void main(String[] args) {
// 字符串常量
System.out.println("ABC");
System.out.println(""); // 字符串两个双引号中间的内容为空
System.out.println("XYZ");
// 整数常量
System.out.println(30);
System.out.println(-500);
// 浮点数常量(小数)
System.out.println(3.14);
System.out.println(-2.5);
// 字符常量
System.out.println('A');
System.out.println('6');
// System.out.println(''); // 两个单引号中间必须有且仅有一个字符,没有不行。
// System.out.println('AB'); // 两个单引号中间必须有且仅有一个字符,有两个不行。
// 布尔常量
System.out.println(true);
System.out.println(false);
// 空常量。空常量不能直接用来打印输出。
// System.out.println(null);
}
}
2、数据类型:
引用数据类型:
基本数据类型:(四类八种)
- 整数型:byte short int long
- 浮点型:float double (表示的是一个近似值,不会是一个精确值)双精度值更精确一点
- 字符型: char
- 布尔型: bolean
- 基本数据类型:
- 引用数据类型:字符串、数组、类、接口、Lamda
数据类型 | 关键字 | 内存占用 | 取值范围 |
字节型 | byte | 1个字节 | -128~127 |
短整型 | short | 2个字节 | -32768~32767 |
整形 | int(默认) | 4个字节 | -2的31次方~2 的31次方-1 (-2147483648~2147483647) |
长整形 | long | 8个字节 | -2的63次方~2的63次方-1 19位(-9,223,372,036,854,775,808~9,223,372,036,854,775,807) |
单精度浮点数 | float | 4个字节 | 1.4013E-45~3.4028E+38 |
双精度浮点数 | double(默认) | 8个字节 | 4.9E.324~1.7977E+308(字节数越多越精确) |
字符型 | char | 2个字节 | 0-65535 (可以用来表示中文的) |
布尔类型 | Boolean | 1个字节 | true,false |
注:Java中的默认类型:整数型是:int 浮点类型是 double
注意事项:
1、字符串不是基本类型。而是引用类型
2、浮点型可能只是一个近似值,并非精确值
3、数据范围与字节数不一定相关,例如float数据范围比long更加广泛,但是float是4字节,long是8字节。
4、浮点数当中默认类型是double。如果一定要使用float类型,需要加上一个后缀F。
5、如果是整数,默认为int类型,如果一定要使用long类型,需要加上一个后缀L。推荐使用大写字母后缀。
3、变量:Demo02Variable.java
/*
变量:程序运行期间,内容可以发生改变的量。
创建一个变量并且使用的格式:
数据类型 变量名称; // 创建了一个变量
变量名称 = 数据值; // 赋值,将右边的数据值,赋值交给左边的变量
一步到位的格式:
数据类型 变量名称 = 数据值; // 在创建一个变量的同时,立刻放入指定的数据值
*/
public class Demo02Variable {
public static void main(String[] args) {
// 创建一个变量
// 格式:数据类型 变量名称;
int num1;
// 向变量当中存入一个数据
// 格式:变量名称 = 数据值;
num1 = 10;
// 当打印输出变量名称的时候,显示出来的是变量的内容
System.out.println(num1); // 10
// 改变变量当中本来的数字,变成新的数字
num1 = 20;
System.out.println(num1); // 20
// 使用一步到位的格式来定义变量
// 格式:数据类型 变量名称 = 数据值;
int num2 = 25;
System.out.println(num2); // 25
num2 = 35;
System.out.println(num2); // 35
System.out.println("===============");
byte num3 = 30; // 注意:右侧数值的范围不能超过左侧数据类型的取值范围
System.out.println(num3); // 30
// byte num4 = 400; // 右侧超出了byte数据范围,错误!
short num5 = 50;
System.out.println(num5); // 50
long num6 = 3000000000L;
System.out.println(num6); // 3000000000
float num7 = 2.5F;
System.out.println(num7); // 2.5
double num8 = 1.2;
System.out.println(num8); // 1.2
char zifu1 = 'A';
System.out.println(zifu1); // A
zifu1 = '中';
System.out.println(zifu1); // 中
boolean var1 = true;
System.out.println(var1); // true
var1 = false;
System.out.println(var1); // false
// 将一个变量的数据内容,赋值交给另一个变量
// 右侧的变量名称var1已经存在,里面装的是false布尔值
// 将右侧变量里面的false值,向左交给var2变量进行存储
boolean var2 = var1;
System.out.println(var2); // false
}
}
4、使用变量的时候注意事项:Demo03VariableNotice.java
/*
使用变量的时候,有一些注意事项:
1. 如果创建多个变量,那么变量之间的名称不可以重复。
2. 对于float和long类型来说,字母后缀F和L不要丢掉。
3. 如果使用byte或者short类型的变量,那么右侧的数据值不能超过左侧类型的范围。
4. 没有进行赋值的变量,不能直接使用;一定要赋值之后,才能使用。
5. 变量使用不能超过作用域的范围。
【作用域】:从定义变量的一行开始,一直到直接所属的大括号结束为止。
6. 可以通过一个语句来创建多个变量,但是一般情况不推荐这么写。
*/
public class Demo03VariableNotice {
public static void main(String[] args) {
int num1 = 10; // 创建了一个新的变量,名叫num1
// int num1 = 20; // 又创建了另一个新的变量,名字也叫num1,错误!
int num2 = 20;
int num3;
num3 = 30;
int num4; // 定义了一个变量,但是没有进行赋值
// System.out.println(num4); // 直接使用打印输出就是错误的!
// System.out.println(num5); // 在创建变量之前,不能使用这个变量
int num5 = 500;
System.out.println(num5); // 500
{
int num6 = 60;
System.out.println(num6); // 60
}
// int num6;
// System.out.println(num6); // 已经超出了大括号的范围,超出了作用域,变量不能再使用了
// 同时创建了三个全都是int类型的变量
int a, b, c;
// 各自分别赋值
a = 10;
b = 20;
c = 30;
System.out.println(a); // 10
System.out.println(b); // 20
System.out.println(c); // 30
// 同时创建三个int变量,并且同时各自赋值
int x = 100, y = 200, z = 300;
System.out.println(x); // 100
System.out.println(y); // 200
System.out.println(z); // 300
}
}
Walter Savage Landor I strove with none, for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
<wiz_marker id="wiz-painter-root" style="">
<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">
分类:
yqv002-bookmarks
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了