java--抽象类的常见应用场景:模板方法设计模式

1.模板方法设计模式解决了什么问题?

①解决方法中存在重复代码的问题。

2.模板方法设计模式的写法

1、定义一个抽象类。

2、在里面定义2个方法

①一个是模板方法:把相同代码放里面去。

②一个是抽象方法:具体实现交给子类完成。

分析:先是调用抽象类里面的write()方法,然后在根据里面的writeMein()方法,找到子类里的这个方法,然后放到抽象类里面的write()方法中打印出来,因为这个t是子类和父类共同拼凑的

3.多学一招:建议使用final关键字修饰模板方法,为什么?

①模板方法是给对象直接使用的,不能被子类重写。

②一旦子类重写了模板方法,模板方法就失效了。

相关推荐
故事和你911 小时前
洛谷-数据结构1-1-线性表1
开发语言·数据结构·c++·算法·leetcode·动态规划·图论
sg_knight2 小时前
设计模式实战:命令模式(Command)
python·设计模式·命令模式
techdashen2 小时前
Rust项目公开征测:Cargo 构建目录新布局方案
开发语言·后端·rust
一 乐2 小时前
电影院|基于springboot + vue电影院购票管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·电影院购票管理管理系统
星空椰2 小时前
JavaScript 进阶基础:函数、作用域与常用技巧总结
开发语言·前端·javascript
恼书:-(空寄2 小时前
JVM GC 日志分析 + 常见 GC 场景 + 实战参数调优
java·jvm
消失的旧时光-19433 小时前
Spring Boot 实战(五):接口工程化升级(统一返回 + 异常处理 + 错误码体系 + 异常流转机制)
java·spring boot·后端·解耦
忒可君3 小时前
C# winform 自制分页功能
android·开发语言·c#
Rust研习社3 小时前
Rust 智能指针 Cell 与 RefCell 的内部可变性
开发语言·后端·rust
leaves falling3 小时前
C++模板进阶
开发语言·c++