zoukankan      html  css  js  c++  java
  • 多态练习题(宠物医院治疗小动物的问题 ,多态的应用:向上类型传递)

    package com.Summer_0427.cn;
    
    /**
     * @author Summer
     * 宠物医院治疗小动物的问题
     * 多态的应用:向上类型传递
     *
     */
    class Pet{
        private String name;
        public Pet(String name) {
            super();
            this.name = name;
        }
        public String getName() {
            return name;
        }
        public void eat(){}
    }
    
    class Dog extends Pet{
    
        public Dog(String name) {
            super(name);
        }
        
        public void eat(){
            System.out.println("小狗吃骨头");
        }
        
        public void run(){
            System.out.println("小狗跑了");
        }
        
    }
    
    class Cat extends Pet{
    
        public Cat(String name) {
            super(name);
        }
        
        public void eat(){
            System.out.println("小猫吃鱼");
        }
        
        public void play(){
            System.out.println("小猫去玩了");
        }
        
    }
    
    class Hospital{
        //看病     多态    向上类型转换       类之间的关系:依赖  局部变量
        public void treatment(Pet pet){//Pet pet = wangwang;new Dog()
            System.out.println("给:"+pet.getName()+"看病");
            pet.eat();
            //对象类型的判断
            if (pet instanceof Dog) {
                Dog dog = (Dog)pet;//把pet进行强转
                dog.run();
            } else {
                Cat cat = (Cat)pet;
                cat.play();
            }
        }
    }
    
    public class TestHospital {
        public static void main(String[] args) {
            Hospital hos = new Hospital();
            Dog p = new Dog("p");
            Cat c = new Cat("c");
            hos.treatment(p);
            hos.treatment(c);
        }
    }

    UML图

     

  • 相关阅读:
    javaDSA实现加密和解密(签名和验证)
    javaRSA实现加密解密
    javaBase64加密解密
    javaApacheMd5AndSHA1加密
    javaDES加密算法
    javaSHA1实现加密解密
    Time dependent Entire Hierarchy
    BI的需求调研的方法分类
    BW Query Design中实现Key figure排序
    后勤模块PROCESS KEY 的激活及查看
  • 原文地址:https://www.cnblogs.com/summerdata/p/10781200.html
Copyright © 2011-2022 走看看