分类
基础知识
Java基础
2026-06-23
16

基本数据类型

整数类型(4种)

类型 占用字节 取值范围 默认值 使用场景
byte 1字节 -128 ~ 127 0 节省内存,处理文件流或网络传输
short 2字节 -32768 ~ 32767 0 较少用,二进制文件操作时偶尔用
int 4字节 约-21亿 ~ 21亿 0 最常用的整数,默认整数类型
long 8字节 -2⁶³ ~ 2⁶³-1 0L 数值范围超过int时使用,赋值时末尾加L

浮点类型(2种)

类型 占用字节 取值范围 默认值 注意事项
float 4字节 约 ±3.4e-38 ~ ±3.4e38 0.0f 赋值时末尾加f,精度约6-7位小数
double 8字节 约 ±4.9e-324 ~ ±1.8e308 0.0d 默认浮点类型,精度约15-16位小数,金融计算慎用

字符类型(1种)

类型 占用字节 取值范围 默认值 说明
char 2字节 0 ~ 65535(Unicode字符) '\u0000' 用单引号表示,如 'A',本质上是一个无符号整数

布尔类型(1种)

类型 占用字节 取值范围 默认值 说明
boolean 1位(1/8字节) true / false false 只表示逻辑值,不能与整数互转(与C/C++不同)

接口和抽象类的区别

  • 关键字不同(abstract,interface)
  • 抽象类可以包含非抽象方法,接口中全是抽象方法
  • 具体化方法不同:接口通过实现类,抽象类通过继承
  • 抽象类单继承,接口多实现
  • 设计目的不同:抽象类是代码复用,接口是行为规范

设计层面的本质区别

  • 抽象类是“从下往上”的复用,接口是“从上往下”的约束
  • 抽象类描述“是什么”,接口描述“能做什么”

接口能替代抽象类吗?

不能。 根本原因:

  • 接口不能有实例变量(无法保存对象状态)
  • 接口的 default 方法如果有冲突(多继承的菱形问题),需要子类手动解决
  • 抽象类可以控制访问权限(protected 给子类用,接口所有方法默认 public)

逻辑运算符

    • &&:短路与,性能更高,表达式一旦出现false就直接返回,不再计算之后表达式
    • &:计算所有表达式得到结果,结果和短路与一致
    • ||:短路或,性能更高,表达式一旦出现true就直接返回,不再计算之后表达式
    • |:计算所有表达式得到结果,结果和短路或一致
    • !:取反

位运算符

都是数值运算,转为二进制后按位补齐,再进行计算

  • &:按位与,都为1记为1,否则记为0
  • |:按位或,有一个为1记为1,否则记为0
  • ^:按位异或,相同记为1,不同记为0
  • <<:乘2的N次方
  • >>:除2的N次方
目录
统计
21
分类
206
文档
2
坚持