继承

作者: 月寒兮夜凉 | 来源:发表于2017-12-07 17:42 被阅读5次
    优秀文章

    菜鸟教程 > 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%

    相关文章

      网友评论

          本文标题:继承

          本文链接:https://www.haomeiwen.com/subject/hfvdixtx.html