优秀文章
菜鸟教程 > Java 继承
clever_fan > 重新认识java(四) — 组合、聚合与继承的爱恨情仇
说明
- 继承是对抽象的抽象的体现;<个人理解>
- 继承是提升代码复用的重要手段;
- 继承是多态实现的基础;
实例
首先设计一个手机类:
public class Phone {
private String displayer; // 显示器
private String battery; // 电池
// 充电
public void charge(){
battery = "100%";
System.out.println("当前电量:"+battery);
}
}
现在需要一款带键盘的手机:
public class KeyPhone {
private String displayer; // 显示器
private String battery; // 电池
private String keyboard; // 键盘
// 充电
public void charge(){
battery = "100%";
System.out.println("当前电量:"+battery);
}
}
以上两个类存在90%以上的代码重复;
从设计上来看,带键盘的手机只是手机中的一种,两者存在is-a的关系,满足继承关系,使用继承重新设计KeyPhone:
public class KeyPhone extends Phone {
private String keyboard; // 键盘
}
给新的键盘手机执行充电功能:
public static void main(String[] args) {
KeyPhone phone = new KeyPhone();
phone.charge();
}
输出结果:
当前电量:100%
网友评论