Java抽象类的构造模板模式用法示例
本文实例讲述了Java抽象类的构造模板模式用法。分享给大家供大家参考,具体如下:
一 点睛
模板模式的一些简单规则。
抽象父类可以只定义需要使用的某些方法,而不能实现的部分抽象成抽象方法,留给子类去实现。
父类中可能包含需要调用其他系列方法的方法,这些被调方法既可以由父类实现,也可以由其子类实现。父类里提供的方法只是定义了一个通用算法,其实现也许并不完全由自身实现,而必须依赖器子类的辅助。
二 实战
1 父类
public abstract class SpeedMeter { // 转速 private double turnRate; public SpeedMeter() { } // 把返回车轮的半径的方法定义为抽象方法 public abstract double getRadius(); public void setTurnRate(double turnRate) { this.turnRate = turnRate; } // 计算速度的通用算法 public double getSpeed() { // 速度等于 车轮半径 * 2 * PI * 转速 return Math.PI * 2 * getRadius() * turnRate; } }
2 子类
public class CarSpeedMeter extends SpeedMeter { public double getRadius() { return 0.28; } public static void main(String[] args) { CarSpeedMeter csm = new CarSpeedMeter(); csm.setTurnRate(15); System.out.println(csm.getSpeed()); } }
三 运行
26.389378290154266
更多java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
相关文章
Spring中BeanFactory与FactoryBean接口的区别详解
这篇文章主要给大家介绍了关于Spring中BeanFactory与FactoryBean接口的区别的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用Spring具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧2019-03-03Idea之没有网络的情况下创建SpringBoot项目的方法实现
本文主要介绍了Idea之没有网络的情况下创建SpringBoot项目的方法实现,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-09-09SpringBoot中整合MyBatis-Plus的方法示例
这篇文章主要介绍了SpringBoot中整合MyBatis-Plus的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-09-09
最新评论