有关java超类静态方法

代码

超类

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

猜你喜欢

转载自blog.csdn.net/dscn15848078969/article/details/114597605