课程总结性Blog
■ 课程总结性Blog
➤ 前言
对于Blog作业,刚开始写Markdown和用检查代码的工具的时候需要多花一些时间,工作量自然更大一些,后面两次相对就轻松一点了,难道倒是没什么,只是总结复盘会费一些时间,写Blog的时候总是不记得之前写PTA的一些踩坑行为,相对的踩坑心得写的就比较少,毕竟写完了PTA过来一段时间写Blog,写完的PTA也是多次试错后的成功版本,也没有去记下每一次踩坑行为,或者说没有必要,代码写的多了,记不住的错误自然会重现,每一次修改完善的时候记上一次,后面自然就能够记住。
对于PTA作业,整体工作量和难度都适中,多花时间基本都能拿到满分或者接近满分,差个五分十分,试过去找,去改,最终也是没有拿到,不过无伤大雅。相对较难的应该就是开学之初的那几次PTA里面的电梯题,里面的逻辑一言难尽。也是PTA里面我耗时最久的题目。
对于实验,Blog作业、PTA作业、实验、线上课程以及线下课程这几个里面,要说对我提升最大的,就是实验,每一次实验都有总结,而且层层递进,不断迭代,最后的GUI实验也是学到内容最多最新的地方,前面的只是有时候能够联系类比对应C语言里面的知识,但GUI的知识体系就更新,也更好用,比起C语言课设里的界面创建来说。另外就是,实验的提交方式,要在实验提交系统里交,而且不能复制,有利有弊,弊端在于几百行的代码,打错个把单词在所难免,一般全部打完还要找半天错的单词才能过,还有一些情况大概就是,在IJ里可以跑,在实验系统不能跑,错误也要找挺久;利端也在于不可复制,从头到尾自己打一遍代码,能够让自己更加熟悉代码,加深印象,在找错误的时候也能对自身能力有一定提升。
对于线上课程,工作量适中,难度都比前面的Blog、PTA、实验低一些,听了课,相对应的题目 答案基本都在课里,能够有效挺高对各种概念的清晰认知,巩固基础。
对于线下课程,工作量较大和难度不高。也是提升自我的一个重要途径之一。
➤ 面向对象技术总结
封装
- 掌握情况:
通过实验中的类设计,能熟练使用private修饰字段,通过getter/setter控制访问。理解封装的核心是隐藏实现细节,避免数据被意外修改。 - 认知:
封装不仅是语法层面的访问控制,更是设计模式的基础。 - 欠缺:
对复杂场景下的封装设计(如深度拷贝 vs 浅拷贝)仍需加强。
继承
- 掌握情况:
能通过extends实现类继承,理解super关键字和方法重写(@Override)。实验中的"动物类层级"设计验证了继承的代码复用性。 - 认知:
继承的"is-a"关系需谨慎使用,避免过度继承。 - 欠缺:
对继承链中构造方法的调用顺序(尤其多继承场景)和protected权限的合理使用不够熟练。
多态
- 掌握情况:
能通过父类引用指向子类对象,理解动态绑定机制。PTA中的"图形面积计算"案例是多态的典型应用。 - 认知:
多态是面向接口编程的基础,结合方法重写和重载实现灵活性。 - 欠缺:
对类型转换和复杂多态设计的应用经验不足。
抽象类与接口
-
抽象类:
- 掌握定义抽象方法和抽象类(如
Animal中的yell())。 - 问题:抽象类与接口的选择场景有时混淆。
- 掌握定义抽象方法和抽象类(如
-
接口:
- 能定义接口(如
Comparable)并实现多接口,理解Java 8的default和static方法。 - 认知:接口是行为抽象的契约,支持多继承,适合"has-a"能力描述(如
Flyable)。
- 能定义接口(如
集合框架
- 掌握情况:
- 熟练使用
ArrayList、LinkedList等常用集合,理解泛型(如List<String>)。 - 实验中的"词频统计"案例巩固了
Map的使用。
- 熟练使用
- 欠缺:
- 对底层实现(如
HashMap的哈希冲突解决、TreeMap的红黑树)和迭代器(Iterator)理解不深;
- 对底层实现(如
异常处理
- 掌握情况:
- 能使用
try-catch-finally处理异常,理解受检异常(IOException)与非受检异常(NullPointerException)的区别。 - PTA作业中因未处理文件不存在异常导致程序崩溃,后续添加了异常处理逻辑。
- 能使用
- 欠缺:
- 自定义异常(如
UserNotFoundException)的设计和全局异常处理机制(如Spring的@ControllerAdvice)未实践过。
- 自定义异常(如
JavaFX
- 掌握情况:
- 完成简单GUI开发(如动物进电器),理解布局(
VBox)、事件处理(EventHandler)基础。
- 完成简单GUI开发(如动物进电器),理解布局(
- 欠缺:
- 对CSS样式绑定、动画效果和复杂控件的使用不熟练;
- 在JavaFX中的实践不足。
总的来说,对封装、继承、多态等基础概念理解扎实,能完成面向对象的简单设计,集合框架和异常处理能满足基本开发需求。但还需要深入集合框架的源码(如HashMap扩容机制)和JVM内存模型、学习设计模式(如观察者模式)在多态和接口中的实践、通过项目实战强化MVC架构和响应式UI设计、加强通过异常堆栈快速定位问题的能力。
结合各个教学环节(PTA作业,实验)重点总结个人对封装、继承、多态、抽象类、接口、集合框架、异常以及JavaFX等相关内容掌握情况的总结,学到了什么,对各部分技术的认知,哪些技术掌握有欠缺等
➤ 踩坑心得
主要是刚开始自己设计代码的时候有点找不到方向,边写边改边设计,依赖、关联、聚合、组合、继承、多态、接口、单一职责原则、开闭原则、里氏替换原则、依赖倒置原则四个原则,一下子忙不过来,顾此失彼。还有各种语法错误,运行错误,逻辑错误。
➤ 改进建议及总结
整门课程学下来收获收获比较多,教师、课程、作业、实验、课上及课下组织方式等方面也能够适应。

浙公网安备 33010602011771号