zoukankan      html  css  js  c++  java
  • java面向对象——多态

    多态
    
    public class Fu {
        int a=1;
        public void methed(){
            System.out.println("这是父类");
        }
    }
    public class Zi extends Fu{
        int a=2;
        public void methed(){
            System.out.println("这是子类");
        }
    }
    public interface JiDu {
        public abstract void jidu();
    }
    public class Pig implements JiDu{
        public void jidu(){
            System.out.println("缉毒炜在缉毒");
        }
    }
    
    public class Tset {
        public static void main(String[] args) {
            //普通类的多态:父类类型 变量名=new 子类类型();
            //多态中的成员变量特点    编译运行看左边
            //1.编译时期看父类是否有该成员变量,有编译成功,没有,编译失败
            //2.运行时期的结果走父类成员变量的值
            //多态中的成员方法特点      编译看左边  运行看右边
            //1.编译时期看父类是否有该成员方法,有编译成功,没有,编译失败
            //2.运行时期的结果是调用子类重写后的方法
            Fu f=new Zi();
            System.out.println(f.a);
            f.methed();
            JiDu j=new Pig();//向上转型 :父类类型 变量名=new 子类类型();
            j.jidu();
            System.out.println(j instanceof Pig);
            //前提需要先有向上转   向下转型:子类类型 变量名=(子类类型) 父类引用变量;   可以调用自己独有的变量和方法
            //Person p=(Person)a;
        }
    }
    
    
    public abstract class Animal {
        public abstract void eat();
    } 
    public class Dog extends Animal{
    
        public void eat() {
            System.out.println("狗吃屎");
        }
        public void lookhome(){
            System.out.println("看家");
        }
    }
    public class Test {
        public static void main(String[] args) {
            Animal dog=new Dog();
            dog.eat();
            //调用自己独有的方法
            method(dog);
    }
        public static void method (Animal an){
            if(an instanceof Dog){
                Dog d=(Dog)an;
                d.lookhome();
            }else if(an instanceof Cat){
                Cat c=(Cat)an;
                c.pu();
            }
        }
    }
  • 相关阅读:
    几句让自己保留的动力的格言
    repo 的几个使用理解
    (转)汇编中断大全
    (转) 汇编.section和.text解释
    find 命令一些小技巧;
    android 系统使用c语言获取系统属性
    新的起点
    PDBC详细介绍
    PDBC(连接数据库)
    Python——基础知识
  • 原文地址:https://www.cnblogs.com/zhaotao11/p/10209312.html
Copyright © 2011-2022 走看看