Java学习打卡 2026.08.22 一、今日学习前言今天系统学习了 Java 面向对象核心基础涵盖对象实例化流程、构造方法完整规则、this关键字调用规则、toString重写、Java包机制、面向对象封装思想、四大访问权限修饰符、static静态成员与静态方法全套核心知识点。全部是后续Java开发的底层重点也是考试、写代码最容易踩坑的部分。二、对象实例化与初始化流程1. 对象创建的两步核心流程当我们 new 类名() 创建对象时Java 会自动完成两件事1. 为对象分配堆内存空间2. 自动调用对应的构造方法有参/无参没有构造方法对象就无法完成初始化也就无法正常创建。三、构造方法完整规则重中之重1. 系统默认无参构造• Java 默认给所有类自动赠送一个无参构造方法• 关键前提一旦我们手动写了有参构造方法系统会收回默认无参构造• 此时如果还需要2. IDEA快速生成构造方法不用手敲代码快捷操作1. 类内空白处右键2. 选择 Generate → Constructor3. 按住 Ctrl / Shift 多选需要的参数4. 一键生成有参/无参构造3. this调用本类构造方法可以在一个构造方法里调用本类的另一个构造方法简化代码。硬性两大语法规则1. this(参数); 必须写在构造方法的第一行2. 不能循环调用、不能自己调用自己否则直接死循环报错4. 构造方法重载一个类可以存在多个构造方法• 无参构造、单参构造、多参构造• 只要参数列表不同就是合法重载四、对象打印toString方法重写1. 默认直接打印对象只会输出一串地址哈希值没有意义2. IDEA 右键 Generate → toString()一键自动重写3. 重写后打印对象会展示对象内部所有属性信息4. 一个类中构造方法、普通方法、toString 可以共存互不冲突五、Java 包机制package1. 包的作用包就是文件夹用来分类管理不同功能的Java代码避免类名冲突。2. 导入包规则• 自定义类、第三方类需要 import 包名.类名 手动导入• java.lang 包下所有类编译器自动导入无需手动 import3. 自定义包自己创建 package 包名规范管理项目代码结构。六、面向对象三大特性之——封装1. 封装核心概念将数据成员变量和操作数据的方法结合在一起隐藏对象内部属性和底层实现细节只对外暴露公开的接口访问。2. 封装三大好处1. 降低代码耦合性2. 降低代码复杂度3. 极大提高代码安全性防止外部随意篡改数据3. 封装实现private get/set• 所有成员变量用 private 私有化• 外部无法直接访问、修改• 提供 get方法获取值、set方法设置值• 外部只能通过公开方法操作私有数据安全可控七、四大访问权限修饰符从严到宽1. private 私有的• 最小权限• 只能在当前类内部访问• 跨类、跨包完全无法使用2. default 默认权限啥都不写• 不写任何修饰符就是默认权限• 仅当前包内可以访问• 出了当前包完全无法访问3. protected 受保护权限包内可访问跨包子类也可访问后续深入学习4. public 公共权限• 最大权限• 任何位置、任何包、任何类都能正常访问记忆private default public八、static 静态关键字核心难点1. 普通成员变量无static• 属于对象• 存储在堆内存• 每个对象独立一份数据2. static 静态成员变量• 不属于对象属于类• 存储在方法区• 所有对象共享同一份数据3. 静态成员四大特性1. 是类属性不属于某个具体对象2. 既可以对象调用也可以类名.变量调用推荐类名调用3. 存放在方法区不在堆内存4. 生命周期跟随类的加载与卸载比对象寿命更长4. 静态方法特性1. 属于类不属于对象2. 推荐 类名.静态方法名() 调用3. 硬性规则静态方法里不能直接访问非静态变量、非静态方法4. 静态方法不能使用 this 关键字5. 静态变量独立初始化静态成员随类加载优先初始化优先于对象创建执行。九、今日知识点总结1. 对象实例化 分配内存 调用对应构造方法2. 有无参构造共存规则自定义有参后无参必须手写3. this调用构造必须第一行、禁止循环调用4. toString重写实现对象友好打印5. 包用于分类管理代码lang包自动导入6. 封装私有化数据对外提供get/set提高安全性7. 四大权限修饰符控制代码访问范围8. static静态内容属于类、共享、存在方法区、静态不能访问非静态十、今日学习感悟今天学的是Java面向对象最底层、最核心的地基知识点。构造方法、封装、权限修饰符、static是后续所有代码、项目开发的基础。搞懂实例化流程、静态与非静态区别。但是在课上对于这些内容不像之前那样子好理解所以掌握不够全不够深继续多练习题目多敲敲代码。加油加油加油

相关新闻

最新新闻

信奥梯队选拔面试中如何评估学员的抗挫能力

信奥梯队选拔面试中如何评估学员的抗挫能力

信奥梯队选拔面试中评估学员抗挫能力,核心是通过可控的“轻度受挫场景”,观察学员面对解题卡壳、思路错误时的真实反应,筛选出能适配信奥长期刷题、反复调试、赛事高压场景的优质苗子。 一、分层设计抗挫能力测试场景 1、‌预备梯队&#x…

2026/8/26 18:26:42
★★★ 完全自动化!个人工作日志统计/效率分析工具 —— 时间都去哪了(TimeWhere)

★★★ 完全自动化!个人工作日志统计/效率分析工具 —— 时间都去哪了(TimeWhere)

你是否也经历过这样的场景? 周五下午被要求交周报,你盯着屏幕发呆——这周到底干了什么?年终写总结,翻遍聊天记录和邮件,却凑不出一份像样的工作总结;每天下班时感觉"挺忙的",回头一…

2026/8/26 18:26:42
第13章 同人•同道 与扎尔的告别

第13章 同人•同道 与扎尔的告别

六月的波士顿已经是初夏了。查尔斯河两岸的树全绿了,浓密的树冠在水面上投下一大片碎影,风一吹就碎成无数个移动的小块。悦儿站在洛根机场的出发大厅里,面前是扎尔拖着两个行李箱的背影。他的帆布包换了一个新的——旧的那个磨了太久&#xf…

2026/8/26 18:26:42
氩弧焊量产工况可以使用节气装置吗?

氩弧焊量产工况可以使用节气装置吗?

一、前言在MIG、TIG、MAG等主流氩弧焊量产工况中,氩气作为核心保护气体,直接决定焊缝成型质量与良品率。目前绝大多数焊接产线,无论人工工位还是自动化机器人工位,普遍采用固定流量恒压供气模式。这种传统供气方式技术门槛低、调试…

2026/8/26 18:26:42
【PYTHON】Selenium跨机控制Chrome窗口置顶方案

【PYTHON】Selenium跨机控制Chrome窗口置顶方案

这里主要讲的是服务端和客户端分离场景 【PYTHON】使用Selenium ChromeDriver执行操作时浏览器置顶B电脑(运行Chrome的远端机器):简易HTTP服务B电脑操作A电脑(Selenium脚本机器)B电脑(运行Chrome的远端机器…

2026/8/26 18:26:42
KMP 平台差异到底怎么设计?从日志导出重构看扩展函数、interface 与 expect/actual

KMP 平台差异到底怎么设计?从日志导出重构看扩展函数、interface 与 expect/actual

在 KMP 项目里,做到一定阶段后很容易遇到一个问题:同一个功能,Android 和 iOS 的底层实现完全不同,到底应该怎么处理?常见方案似乎有很多。比如:expect / actual或者:commonMain 定义 interface…

2026/8/26 18:21:42