Java 基础学习总结

一、Java 平台体系

1.1 核心概念

  • JDK(Java Development Kit):Java开发工具包,包含开发工具和JRE
  • JRE(Java Runtime Environment):Java运行环境,包含JVM和核心类库
  • JVM(Java Virtual Machine):Java虚拟机,将字节码转换为机器代码

关系:JDK ⊃ JRE ⊃ JVM

1.2 环境配置

  • Path环境变量:设置操作系统查找可执行文件的路径顺序
  • Classpath:JVM执行Java程序时搜索类的路径顺序

二、数据类型详解

2.1 基本数据类型

浮点型
  • double(双精度):精度高,范围大,占用8字节
  • float(单精度):需加后缀f/F,占用4字节
  • 开发建议:无特殊情况优先使用double
  • 注意:浮点型精度有限,高精度计算需使用BigDecimal
整型
类型 字节数 范围 后缀
byte 1 -128 ~ 127
short 2 -32768 ~ 32767
int 4 -2^31 ~ 2^31-1
long 8 -2^63 ~ 2^63-1 l/L

开发建议:无特殊要求优先使用int类型

存储单位换算
8 bit = 1 Byte
1024 Byte = 1 KB
1024 KB = 1 MB
1024 MB = 1 GB
1024 GB = 1 TB
字符型
  • 表示方式
    • 单引号表示单个字符:‘A’
    • Unicode值:‘\u0041’
    • 转义字符:‘\n’、‘\t’
    • ASCII码:97 → ‘a’
布尔型
  • 取值:true/false
  • 主要用于流程控制语句
  • 内存中实际占用4字节

2.2 常量

  • 声明语法final 数据类型 标识符(大写) = 值
  • 整型常量:默认int,长整型加l/L
  • 浮点常量:默认double,float加f/F

三、编程基础语法

3.1 标识符与关键字

  • 关键字:Java语言定义的特殊含义单词(全小写)
  • 标识符命名规则
    • 组成:字母、数字、_、$(数字不能开头)
    • 不能使用关键字,区分大小写
    • 不能包含空格

3.2 命名规范

类型 规范 示例
包名 全小写,点分隔 java.util
类名接口 驼峰,首字母大写 HelloWorld
变量方法 驼峰,首字母小写 bookName
常量 全大写,下划线分隔 MAX_VALUE

3.3 变量声明与使用

数据类型 变量名 =;
  • 同一作用域内不能重名
  • 必须先赋值后使用
  • 作用域内有效

四、数据类型运算

4.1 自动类型提升

  • 小容量类型与大容量类型运算 → 自动提升为大容量类型
  • byte/short/char之间运算 → 结果为int类型
  • 特殊情况:
    • long可省略L(int自动提升)
    • float必须加F(double不会自动降级)

4.2 强制类型转换

目标类型 变量名 = (目标类型);
  • 可能损失精度或溢出

4.3 字符串运算

  • String属于引用数据类型
  • 使用"+"进行字符串连接
  • 字符串转整型:Integer.parseInt(str)

五、进制与编码

5.1 进制分类

进制 前缀 特点
二进制 0b/0B 满二进一
八进制 0 满八进一
十进制 满十进一
十六进制 0x/0X 满十六进一

5.2 原码、反码、补码

  • 正数:三码合一
  • 负数
    • 原码:最高位1,其余为二进制值
    • 反码:符号位不变,其余取反
    • 补码:反码+1
  • 计算机存储:使用二进制补码形式

5.3 进制转换

  • 十进制→二进制:除2取余逆序排列
  • 二进制→八进制:每3位一组转换
  • 二进制→十六进制:每4位一组转换

六、运算符详解

6.1 算术运算符

  • 取模运算:结果符号与被模数相同
  • 自增自减
    • 前++:先自增后使用
    • 后++:先使用后自增
  • 字符串连接:+用于String与其他类型连接

6.2 赋值运算符

+=、-=、*=、/=、%=

  • 自动处理类型转换
  • 不改变变量数据类型

6.3 比较运算符

==、!=、>、<、>=、<=、instanceof

  • 结果为boolean类型
  • 适用于基本数据类型和引用数据类型

6.4 逻辑运算符

运算符 含义 特点
& 两边都计算
&& 短路与 左边false则跳过右边
| 两边都计算
|| 短路或 左边true则跳过右边

开发建议:优先使用&&和||提高效率

6.5 位运算符

  • 左移<<:每移1位相当于×2
  • 右移>>:每移1位相当于÷2
  • 无符号右移>>>:空位补0

6.6 条件运算符

条件表达式 ? 表达式1 : 表达式2

  • 三元运算符,根据条件选择执行表达式

6.7 变量值交换方法

  1. 使用临时变量
  2. 使用加减法
  3. 使用位异或运算

七、学习反思与计划

7.1 本周收获

  • 掌握了Java基础语法和数据类型
  • 理解了运算符的使用规则和特性
  • 建立了系统的知识框架

7.2 存在问题

  • 代码调试能力有待提高
  • 粗心导致的语法错误较多
  • 独立思考解决问题的能力需要加强

7.3 下周计划

  1. 复习巩固:完成变量与运算符的企业真题练习
  2. 新知识学习:掌握流程控制、数组、类与对象
  3. 能力提升
    • 提高代码编写速度和准确性
    • 加强独立调试能力
    • 减少对学长学姐的依赖
  4. 质量保证:注重知识回顾,多练习多思考

7.4 生活感悟

在小组学习中找到了明确的目标和方向,虽然学习强度较大但充实有意义。感谢学长学姐的耐心指导,让我在专业学习上有了更好的理解。意识到需要改进粗心的习惯,提高自我解决问题的能力。


学习态度:保持积极进取,注重基础巩固,平衡学习进度与质量,培养独立思考和解决问题的能力。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐