0
点赞
收藏
分享

微信扫一扫

有关java超类静态方法

cnlinkchina 2022-04-13 阅读 78

代码
超类

public abstract class Parent
{
    public static void print(String v)
    {
        System.out.println(v);
    }

    public static void print(int v)
    {
        System.out.println(v);
    }

    public static void print(long v)
    {
        System.out.println(v);
    }
}

子类

public class Child extends Parent
{
    public static void print(int v)
    {
        System.out.println(-v);
    }

    public static void print(float v)
    {
        System.out.println(v);
    }
}

主类

public class App
{
    public static void main(String[] args) throws Exception
    {
        Parent.print("str");
        Parent.print(1);
        Parent.print(1L);
        Child.print("STR"); // 超类方法
        Child.print(10); // 子类方法已经覆盖超类方法,这里输出子类逻辑结果
        Child.print(10L);
        Child.print(.5f);
        Parent p = new Child();
        p.print(10); // 仍输出超类逻辑,说明子类没重写超类方法
        p.print(10L);
    }
}

结果

str
1
1
STR
-10
10
0.5
10
10

举报

相关推荐

0 条评论