JAVA基础

记录 Java 基础语法,包括注释、标识符、关键字、变量与基本数据类型等内容。

JAVA基础

注释

并不会被执行,平时写代码一定要规范

单行注释

1
//

多行注释

1
/* 这是多行注释,可以注释一行文字*/

有趣的注释

文档注释 JavaDoc

1
/**   */

标识符 关键字

Java所有的组成部分都需要名字。给类、变量以及方法起的名字都被称为标识符。

为了方便区分、使用它们!

image-20260828182139662

java关键字:

abstract assert boolean break byte
case catch char class const
continue default do double else
enum extends final finally float
for goto if implements import
instanceof int interface long native
new package private protected public
return strictfp short static super
switch synchronized this throw throws
transient try void volatile while
  1. goto、const:是保留关键字,没有实际使用,预留以后使用。
  2. Java 关键字全部小写,像String不是关键字,是类名。
  3. true、false、null 不是关键字,是字面量,代表固定值,也不能当名字,但不属于关键字。

数据类型

强类型语言 java c

要求变量的使用要严格符合规定,所有变量先定义后才能使用

更安全,速度慢

弱类型语言 python

Java的数据类型分为两大类

基本类型

数值类型

1
2
3
4
5
6
7
8
9
10
11
12
13
14
1. 整数类型 存整数
byte 占1个字节范围:-128~127
short 占2个字节范围:-32768~32767
int 占4个字节范围:-2147483648~2147483647
long 占8个字节范围:-9223372036854775808~9223372036854775807 L

2. 浮点类型 存小数
float占4个字节 单精度浮点数
double占8个字节 双精度浮点数
说明:
1.一般小数优先用 double。但两者都不能精确表示所有十进制小数,例如 0.1 在它们内部通常是近似值。
2.赋给 float 时,通常需要加上 F
3. 字符型
char占2个字节,使用单引号

boolean类型

1
2
占1位其值只有true和false两个
boolean flag = true

还有一个要单独区分

1
2
String  字符串
能存一段文字,使用双引号。但它是一个类,属于引用类型,不是关键字,特不属于上面的8种基本类型

引用类型 Reference type

1
2
3
类
接口
数组

知识补充

  • 位 bit

    1
    是计算机内部数据储存的最小单位,11001100是一个八位二进制数
  • 字节byte

    1
    2
    3
    4
    5
    是计算机中数据处理的基本单位,习惯上用大写B来表示
    1B(byte,字节)=8bit(位)
    1024B=1KB
    1024KB=1M
    1024M=1G
  • 字符

    1
    是指计算机中使用的字母、数字、字和符号

数据类型拓展及面试题讲解

整数拓展

1
2
3
4
5
进制
二进制 0b
十进制
八进制 0
十六进制 0x A~F 16

浮点数拓展

1
2
3
银行业务怎么表示---------BigDecimal 数学工具类
浮点数 有限 离散 舍入误差 大约 接近但不等于
最好完全避免使用浮点数进行比较

字符拓展

1
2
3
所有的字符本质还是数字 
编码Unicode 2字节 表:97-a 65-A 0~65536 、
U0000 UFFFF

转义字符

1
2
\t 制表符
\n 换行

布尔拓展

1
2
3
flag=ture;
if(flag){
}

类型转换

java是强类型语言,所以要进行有些运算的时候,需要用到类型转换

低————————————–>高

byte,short,char->int->long->float->double

运算中,不同类型的数据先转化为同一类型,然后进行运算

强制类型转换 高>低

自动类型转换 低>高

注意:

1
2
3
4
不能对布尔值进行转换
不能把对象类型转换为不相干的类型
在把高容量转换到低容量的时候,强制转换
转换的时候可能存在内存溢出,或精度问题!

变量 常量

变量

可以变化的量

java是强类型语言,每个变量都必须声明其类型

1
2
3
4
5
数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型的变量(不建议)
注意:
1.变量是java程序中最基本的存储单元,其要素包括变量名,变量类型,作用域
2.变量声明是一条完整的语句,因此每一个声明都必须以分号结束
3.变量名必须是合法的标识符

作用域

类变量 static

1
属性 加关键字 static

实例变量

1
2
3
从属于对象;如果不自行初始化,这个类型默认值 0 0.0
布尔值:默认类型是false
除了基本类型,其余的默认值都是null

局部变量

1
方法里的 必须声明和初始化值
变量类型 位置 有没有默认值 是否必须手动初始化 归属
类变量 (static) 类内,方法外,加 static ✅ 有默认值 可以不初始化,JVM 自动填充 属于类,所有对象共享
实例变量 类内,方法外,无 static ✅ 有默认值 可以不初始化,JVM 自动填充 属于单个对象,每个对象独立
局部变量 方法内部 / 代码块 {} 内 ❌ 没有默认值 使用前必须手动赋值,否则编译报错 属于方法,方法执行结束销毁

常量 Constant

1
2
3
4
初始化后不能再改变值 不会变动的值 特殊的变量
关键字 final
final 常量名=常量值
常量名一般使用大写字符。
1
2
// 修饰符:变量类型前面的,不区分前后
public static final double PI=3.14;

变量的命名规范

1
2
3
4
5
6
所有变量见名知意
类成员变量:首字母小写和驼峰原则 monthSalary
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线
类名:首字母大写和驼峰原则 GoodMan
方法名:首字母小写和驼峰原则

运算符

计算机——计算

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
算术运算符:+ - * / %(取余,模运算) ++ --
赋值运算符:=
关系运算符:> < >= <= == != instanceof(面向对象)
逻辑运算符:短路运算
&& 与
|| 或
! 非

位运算符: 效率极高
& 都是1才为1
| 都是0才是0
^ 相同为0
~ 取反 ~B

>> 右移 /2
<< 左移*2
0000 0000 0
0000 0001 1
0000 0010 2
0000 0011 3
0000 0100 4
0000 1000 8
0001 0000 16

>>>
条件运算符:
? : 三元运算符 x?y:z
扩展赋值运算符:+= -= *= /=
a+=b; a=a+b

字符串连接符 +

1
2
3
4
5
6
优先级:
数字越大越先算;同优先级看结合性(从左往右 / 从右往左)
括号永远最高,赋值永远最低
括号 > 一元 > 乘除模 > 加减 > 移位 > 比较 > 判等 > 位与异或或 > 逻辑与 && > 逻辑或 || > 三元 > 赋值
!(逻辑非)优先级远高于&&、||
&& > ||,先与后或

包机制

本质:文件夹

为了更好地组织类,java提供了包机制,用于区别类名的命名空间

包语句的语法格式

1
package pkg1[.pkg2[.pkg3...]]
  • 一般利用公司域名倒置作为包名
  • 为了能够使用某一个包的成员,我们需要在java程序中明确导入该包——import

JavaDoc 类或者方法上面

javadoc命令是用来生成自己的API文档的

1
2
3
4
5
6
7
8
9
参数信息

@author
@version
@since 指明需要最早使用的jdk版本

@param
@return
@throws 异常抛出情况

命令行生成javaDoc文档

1
2
javadoc -encoding UTF-8 -charset UTF-8 文件名
-encoding UTF-8 -charset UTF-8 预防中文乱码

使用IDEA生成javaDoc文档

1
2
3
4
5
6
顶部菜单栏:Tools → Generate JavaDoc...(生成 JavaDoc)JetBrains
Scope(范围)
Output directory:必须选一个文件夹
Visibility(可见性)
Other command line arguments (解决中文乱码!必须填)
勾选 Open generated documentation in browser,生成完自动用浏览器打开

JAVA基础
http://lotus.github.io/2026/08/27/JAVA基础/
作者
Lotus
发布于
2026年8月27日
许可协议