zoukankan      html  css  js  c++  java
  • JAVA类的继承之多态特性

      父类可以接收子类的实例,方法的覆盖,属性的隐藏,这些都使我非常疑惑,今天有点时间记录之。

      话不多说,直接上代码上结果

    1.

    public class TestDto{
        public static void main(String[] args) {
            ClassInitializeChild child=new ClassInitializeChild();
            System.out.println(child.name);
        }
    }
    class ClassInitializeParent{
        public String name="parent";
        public void print(){
            System.out.println("parent="+name);
        }
        public ClassInitializeParent(){
            print();
        }
    }
    class ClassInitializeChild extends ClassInitializeParent{
        public String name="child";
        public void print(){
            System.out.println("child="+name);
        }
        public ClassInitializeChild(){
            print();
        }
    }

      结果:

      

    child=null
    child=child
    child

    2.

    public class TestDto{
        public static void main(String[] args) {
            ClassInitializeParent parent=new ClassInitializeChild();
            System.out.println(parent.name);
        }
    }
    class ClassInitializeParent{
        public String name="parent";
        public void print(){
            System.out.println("parent="+name);
        }
        public ClassInitializeParent(){
            print();
        }
    }
    class ClassInitializeChild extends ClassInitializeParent{
        public String name="child";
        public void print(){
            System.out.println("child="+name);
        }
        public ClassInitializeChild(){
            print();
        }
    }

      结果:

      

    child=null
    child=child
    parent

    3.

    public class TestDto{
        public static void main(String[] args) {
            ClassInitializeParent parent=new ClassInitializeChild();
            parent.print();
        }
    }
    class ClassInitializeParent{
        public String name="parent";
        public void print(){
            System.out.println("parent="+name);
        }
    }
    class ClassInitializeChild extends ClassInitializeParent{
        public String name="child";
        public void print(){
            System.out.println("child="+name);
        }
    }

      结果:

      

    child=child

    4.

    public class TestDto{
        public static void main(String[] args) {
            ClassInitializeParent parent=new ClassInitializeParent();
            parent.print();
        }
    }
    class ClassInitializeParent{
        public String name="parent";
        public void print(){
            System.out.println("parent="+name);
        }
    }
    class ClassInitializeChild extends ClassInitializeParent{
        public String name="child";
        public void print(){
            System.out.println("child="+name);
        }
    }

      结果:

    parent=parent
  • 相关阅读:
    Mybatis整理
    Spring获取json和表单
    Mqtt(paho)重连机制
    Redis无法获取资源(Could not get a resource from the pool)
    SSM+Maven+Redis框架学习
    第一章 Zookeeper理论基础
    RocketMQ和Kafka对比
    Kafka工作原理与过程
    Kafka介绍
    JVM调优
  • 原文地址:https://www.cnblogs.com/wuyouwei/p/6274190.html
Copyright © 2011-2022 走看看