关于上下转型以及接口的多继承

package com.li.sum;

public class interfaceExercise {
    public static void main(String[] args) {
//        上转型,将子类对象赋值给父类(父类可以使抽象类,甚至是接口)
        A a = new C();
        a.f1();
        System.out.println("*************************");
//        下转型,将已经上转型的对象再强制转换为子类,可以将隐藏的方法都显示出来
        C c = (C)a;
        c.f1();
        c.f2();
        System.out.println("*************************");
//        接口多继承中特殊的下转型,可以将上转型的对象通过强制转换赋值给多继承中的另一个父类
        B b = (B)a;
        b.f2();
    }
}
interface A{
    void f1();
}
interface B{
    void f2();
}
class C implements A,B{
    @Override
    public void f1() {
        System.out.println("1...");
    }

    @Override
    public void f2() {
        System.out.println("2...");
    }
}

关于上下转型以及接口的多继承

上一篇:CorelDRAW(CDR)设计制作“茶道人生”的书籍封面实例教程


下一篇:关于字典等基础知识点