一,谈向上转换,或者上溯造型

  1. 什么是向上转换(上溯造型),一句话就是父类的引用指向子类的对象。或者把子类的对象当作父类来用
  2. 为什么要进行向上转换?我们先看一个例子吧!
    @Test
        public void test08() {
            Demo1_7_1 d=new Demo1_7_1();
            testDemo1_7_1(d);
        }
        public void testDemo1_7_1(Demo1_7_1 d){
            d.test1();
        }
    
    
    class Demo1_7{
        public void test1() {
            System.out.println("Demo1_7");
        }
    }
    class Demo1_7_1 extends Demo1_7{
        public void test1(){
            System.out.println("Demo1_7_1");
        }
    }
    testDemo1_7_1方法是入参为Demo1_7_1的,这个时候我需求发生变更,Demo1_7再加一个子类Demo1_7_2,那我是不是还需要弄一个testDemo1_7_2的方法呢?

    @Test
        public void test08() {
            Demo1_7_1 d=new Demo1_7_1();
            testDemo1_7_1(d);
            
            Demo1_7_2 d2=new Demo1_7_2();
            testDemo1_7_2(d2);
        }
        public void testDemo1_7_1(Demo1_7_1 d){
            d.test1();
        }
        public void testDemo1_7_2(Demo1_7_2 d){
            d.test1();
        }
    
    
    class Demo1_7{
        public void test1() {
            System.out.println("Demo1_7");
        }
    }
    class Demo1_7_1 extends Demo1_7{
        public void test1(){
            System.out.println("Demo1_7_1");
        }
    }
    class Demo1_7_2 extends Demo1_7{
        public void test1(){
            System.out.println("Demo1_7_1");
        }
    }
    View Code

相关文章:

  • 2021-07-07
  • 2022-12-23
  • 2022-12-23
  • 2021-09-18
  • 2021-10-05
猜你喜欢
  • 2021-12-28
  • 2021-12-01
  • 2022-12-23
  • 2021-05-26
  • 2022-12-23
  • 2021-10-10
  • 2021-10-26
相关资源
相似解决方案