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
  • 相关阅读:
    黄聪:DEDECMS织梦 真正的随机文章的调用方法
    黄聪:Apache 301重定向中RewriteCond规则参数介绍(转)
    [阅读笔记]fsnotify源码阅读
    [阅读笔记]Go语言并发之美
    NUMA的取舍
    Web服务器那些招
    PHP执行批量mysql语句
    gotour练习解答
    mysql多个TimeStamp设置
    mysql那些招
  • 原文地址:https://www.cnblogs.com/wuyouwei/p/6274190.html
Copyright © 2011-2022 走看看