zoukankan      html  css  js  c++  java
  • 多态的概念

    多态的概念

    //多态:一个引用(类型)在不同情况下的多种状态
    
    //多态:是指通过父类的指针,来调用在不同子类中实现的方法
    
     
    
    public class多态 {
    
        public static void main(String[] args) {
    
            //里氏替换原则
    
            //父类的引用类型实例化子类对象
    
    //        Animal1 s=new Cat1();
    
    //        s.cry();
    
    //        s=new Dog1();
    
    //        s.cry();
    
            Master master=new Master();
    
            master.feed(new Dog1(), new Bone());
    
        }
    
    }
    
    //主人类
    
    class Master{
    
        //给动物喂食物,使用多态,用一个方法就可以(不管有多少个动物)
    
        public void feed(Animal1 an,Food f){
    
            an.eat();
    
            f.showName();
    
        }
    
    }
    
    //动物类
    
    class Animal1{
    
        String name;
    
        int age;
    
        //自动生成:右键>>source>>找到get和set
    
        public String getName() {
    
            return name;
    
        }
    
        public void setName(String name) {
    
            this.name = name;
    
        }
    
        public int getAge() {
    
            return age;
    
        }
    
        public void setAge(int age) {
    
            this.age = age;
    
        }
    
        public void cry(){
    
            System.out.println("动物叫声");
    
        }
    
        public void eat(){
    
        }
    
    }
    
    class Cat1 extends Animal1{
    
        public void cry(){
    
            System.out.println("猫叫声");
    
        }
    
        public void eat(){
    
            System.out.println("猫吃鱼");
    
        }
    
    }
    
    class Dog1 extends Animal1{
    
        public void cry(){
    
            System.out.println("狗叫声");
    
        }    
    
        public void eat(){
    
            System.out.println("狗吃骨头");
    
        }
    
    }
    
    //食物类
    
    class Food{
    
        String name;
    
        public void showName(){    
    
        }
    
    }
    
    class Fish extends Food{
    
        public void showName(){
    
            System.out.println("鱼");
    
        }
    
    }
    
    class Bone extends Food{
    
        public void showName(){
    
            System.out.println("骨头");
    
        }
    
    }
  • 相关阅读:
    windows使用zip包安装mysql8.0.12
    windows使用msi包安装mysql8.0.12
    查看mysql的bin-log日志
    修改zabbix的端口号
    mysql备份脚本并保留7天
    上海坤亿
    nginx面试题
    服务器导入导出数据
    轮询和长轮询
    Python 三种读文件方法read(), readline(), readlines()及去掉换行符
  • 原文地址:https://www.cnblogs.com/xdzy/p/9467724.html
Copyright © 2011-2022 走看看