zoukankan      html  css  js  c++  java
  • JAVA 多态

    /*
    多态
    OOP三大特性:封装、继承、多态
    多态:可以理解为事物存在的多种体现形态
    例如:
    动物:猫,狗,猪
    人:男人,女人
    
    1、多态的体现
    父类引用指向子类对象
    
    2、多态的前提
        (1)必须得类与类之间存在关系,可以是继承关系,也可以是实现关系
        (2)必须得有重写
    
    3、多态的好处
    大大提高了程序的可扩展性    
    
    4、多态的弊端
    虽然提高了程序的可扩展性,但只能用父类引用,访问到父类中的成员
        
        
    多态成员变量的特点:
    1、编译期间:参阅的是引用型变量是否有所属的类中是否有调用的方法
    2、运行期间:参阅对象所属的类中是否有调用的方法
    */
    
    //动物
    class Animal{
        void sing(){
            System.out.println("唱歌");
        }
    }
    //
    class Dog extends Animal{
        void sing(){
            System.out.println("汪汪的唱歌");
        }
    }
    //
    class Cat extends Animal{
        void sing(){
            System.out.println("喵喵的唱歌");
        }
        void catchMouse(){
            System.out.println("捕鼠");
        }
    }
    //
    class Pig extends Animal{
        void sing(){
            System.out.println("恩恩的唱歌");
        }
    }
    public class Test{
        public static void main(String[] args){
            Cat c    =    new Cat();
            function(c);
            Dog d    =    new Dog();
            function(d);
            Pig p    =    new Pig();
            function(p);
            
        }
        public static void function(Animal c){
            c.sing();
        }
    }
  • 相关阅读:
    BZOJ3036: 绿豆蛙的归宿
    BZOJ1419: Red is good
    BZOJ1013: [JSOI2008]球形空间产生器sphere
    BZOJ1415: [Noi2005]聪聪和可可
    BZOJ1417: Pku3156 Interconnect
    BZOJ1076: [SCOI2008]奖励关
    BZOJ2318: Spoj4060 game with probability Problem
    BZOJ1426: 收集邮票
    BZOJ2720: [Violet 5]列队春游
    BZOJ2698染色
  • 原文地址:https://www.cnblogs.com/phpyangbo/p/java-duotai.html
Copyright © 2011-2022 走看看