友友们,互三啦!!互三必回!!后台踢踢哦~
更多精彩:个人主页
更多java笔记系列:java学习笔记
赛博算命系列:赛博算命
赛博算命之 ”梅花易数“ 的 “JAVA“ 实现 ——从玄学到科学的探索
赛博算卦之周易六十四卦JAVA实现:六幺算尽天下事,梅花化解天下苦。
文章目录
- #面向对象的介绍:
- 一、设计对象并使用
- 1.类和对象
- 2.类的几个补充注意事项
- 3.开发中类的设计
- 二、封装
- 1.封装的介绍
- 2.封装的好处
- 3.private关键字
- 三、this关键字
- 1.成员变量和局部变量
- 2.举例
- 代码详细解释:
- 1. 类的成员变量定义
- 2. 构造方法中的 `this` 关键字使用
- 3. `set` 方法中的 `this` 关键字使用
- 4. `get` 方法中的 `this` 关键字使用
- 5. `displayInfo` 方法中的 `this` 关键字使用
- 四、构造方法
- 1.构造方法的概述
- 2.构造方法的格式
- 3.构造方法的作用
- 4.构造方法的分类
- 5.构造方法的注意事项
- 五、标准JavaBean
- 1.标准的JavaBean类
- 六、对象内存图
- 1.一个对象的内存图
- 内存执行顺序解析(基于Java内存模型)
- **1. 类加载阶段(方法区)**
- **2. 栈内存操作(main方法启动)**
- **3. 堆内存分配(对象实例化)**
- **4. 对象初始化流程**
- **5. 变量关联与操作**
- **6. 方法调用(方法区与栈协作)**
- **内存操作完整流程总结**
- **关键现象解释**
- 2.多个对象的内存图
- **2.1、执行顺序与内存操作分步解析**
- **1. 加载class文件(方法区)**
- **2. 声明局部变量(栈内存)**
- **3. 堆内存分配(对象空间开辟)**
- **4. 默认初始化(堆内存)**
- **5. 显示初始化(堆内存)**
- **6. 构造方法初始化(堆内存)**
- **7. 地址赋值(栈内存)**
- **2.2、内存模型与对象独立性的关键验证**
- **1. 对象独立性的体现**
- **2. 内存操作流程图解**
- **2.3、执行流程总结(分阶段)**
- **2.4、常见问题解答**
- **1. 为什么`System.out.println(s)` 输出地址?**
- **2. 显示初始化和构造方法初始化有何区别?**
- **3. 如何优化内存使用?**
- 3.两个变量指向同一个对象内存图
- 3.1、类加载阶段(方法区)
- 3.2、栈内存操作(main方法栈帧)
- 3.3、堆内存操作(对象关联)
- 3.4、最终内存结构
- 3.5、输出结果分析
- 4.this的内存原理
- 4.1、类加载阶段(方法区核心操作)
- 4.2、对象实例化流程(堆栈协同)
- 4.3、方法调用时的内存隔离(栈帧作用域)
- 4.4、关键差异对比表
- 4.5、技术扩展:`this`的底层实现
- 5.基本数据类型和引用数据类型的区别
- 5.1基本数据类型
- 5.2引用数据类型
- 七、补充知识:成员变量、局部变量区别