第一章 Java 概述1.1 Java 起源与发展1. 研发背景1991年Sun Microsystems启动Green项目负责人James Gosling高斯林Java之父目标为家电、机顶盒等嵌入式设备开发轻量化编程语言。- 初代语言命名Oak办公室橡树商标被注册无法使用- 团队取自印尼爪哇岛咖啡更名Java。2. 正式发布1995.5.23 Java1.0面世标志性标语Write Once, Run Anywhere一次编译随处运行。3. 权属变更2009年Oracle收购SunJava版权归甲骨文主流稳定版本Java8、Java17LTS长期支持版。4. 诞生初衷解决C/C跨平台差、指针不安全、手动内存管理、嵌入式移植成本高的缺陷。1.2 JDK、JRE、JVM 三层架构必考1. JVM Java虚拟机执行 .class 字节码屏蔽操作系统差异实现跨平台不同系统配备专属JVM。2. JRE Java运行环境 JVM Java核心类库仅能运行Java程序无编译工具。3. JDK Java开发工具包 JRE 开发工具javac编译器、java运行工具、调试工具程序员开发必备。层级关系JDK ⊃ JRE ⊃ JVM1.3 Java 核心特性1. 跨平台性JVM实现2. 纯面向对象万物皆对象除基本数据类型3. 安全性取消指针、内存自动回收、字节码校验4. 多线程支持、分布式、可移植、简单易学1.4 Java程序运行机制1. 编辑编写 .java 源文件2. 编译 javac 文件名.java 生成平台无关字节码 .class3. 运行 java 类名 JVM加载字节码解释执行第二章 Java 基础语法2.1 注释体系1. 单行注释 // 内容2. 多行注释 /* 多行文本 */3. 文档注释 /** 用于生成API文档 */2.2 标识符与关键字1. 标识符命名规则由字母、数字、下划线 _ 、美元符 $ 组成不能数字开头、不能是关键字区分大小写。2. 命名规范- 类大驼峰 StudentTest- 变量/方法小驼峰 studentAge- 常量全大写下划线分隔 MAX_VALUE2.3 常量与变量1. 常量 final 类型 常量名 值; 赋值后不可修改2. 变量内存存储空间三要素数据类型、变量名、值3. 变量作用域局部变量方法内、成员变量类中方法外2.4 数据类型8大基本类型引用类型基础数据类型表格类型 字节 范围 定义示例byte 1 -128~127 byte b 10;short 2 -32768~32767 short s20;int 4 ±21亿 int i1000;long 8 超大整型 long l100L;float 4 单精度浮点 float f3.14F;double 8 双精度浮点 double d3.14;char 2 单个字符 char ca;boolean 1 true / false boolean flagtrue;引用数据类型String、数组、自定义类、接口存储对象地址默认值 null 。2.5 类型转换1. 自动转换隐式小范围→大范围byte→short→int→long→float→double2. 强制转换显式大范围→小范围丢失精度2.6 运算符分类1. 算术 - * / % --整数除法舍去小数 前置先自增后置后自增2. 赋值 - * / %3. 比较 ! 返回boolean字符串比较不用 用 equals()4. 逻辑 短路与、 || 短路或、 ! 非5. 三元运算符 条件 ? 真值 : 假值第三章 流程控制语句3.1 分支结构1. if-else 多分支2. switch 分支支持byte、short、int、char、String、枚举无break会发生case穿透。3.2 循环结构1. for循环已知循环次数首选2. while循环先判断后执行可能一次不运行3. do-while循环先执行后判断至少执行一次3.3 跳转关键字- break终止当前循环/switch- continue终止本次循环进入下一轮第四章 数组4.1 一维数组三种初始化4.2 数组属性与遍历- 长度属性 数组名.length- 普通for遍历、增强for-each遍历4.3 二维数组存储多行多列数据 int[][] arr {{1,2},{3,4}};4.4 Arrays工具类导包 import java.util.Arrays - Arrays.toString()打印数组全部元素- Arrays.sort()数组升序排序第五章 方法函数5.1 方法定义语法- void无返回值方法无需return- 形参方法定义参数实参调用时传入数据5.2 方法重载 Overload同一类中方法名相同参数个数/类型/顺序不同与返回值无关。5.3 可变参数类型... 参数名 底层为数组必须放在参数列表末尾第六章 面向对象Java核心重点6.1 类与对象- 类抽象模板描述事物属性与行为- 对象类的实例真实存在个体6.2 类标准结构成员变量属性、构造方法、成员方法构造方法1. 方法名与类名完全一致无返回值2. 创建对象时自动调用用于初始化成员变量3. 无参构造默认存在自定义有参构造后默认无参构造消失4. this() 调用本类其他构造必须放在方法第一行6.3 this关键字1. this.成员变量 区分局部变量与成员变量2. this() 调用本类构造方法3. this.方法() 调用本类成员方法6.4 封装三大特性11. 私有化成员变量 private 外部无法直接访问2. 提供getter/setter方法访问、修改属性可增加数据校验6.5 继承 extends三大特性21. Java单继承一个类只能直接继承一个父类2. super 关键字访问父类成员、调用父类构造 super()3. 子类构造默认第一行隐含 super() 调用父类无参构造6.6 方法重写 override子类重写父类同名、同参数方法用于扩展父类功能。