static修饰的方法:
子父类中同名同参的方法要么都被static修饰,要么都不被static修饰。
被static修饰的不会构成方法的重写。
//静态方法不存在重写
public class Demo02 {
public static void main(String[] args) {
B.a();//asas
A.a();//123
A a = new B();//多态
a.a();//输出的是123 调用的是A中的静态方法,而不是B中的,因为static方法不构成重写
}
}
class A{
public static void a() {
System.out.println("123");
}
public void b() {
}
public static void c() {
System.out.println("测试返回值有没有影响");
}
}
class B extends A{
public static void a() {
System.out.println("asas");
}
@Override
public void b() {
// TODO Auto-generated method stub
super.b();
}
// public static int c() {//The return type is incompatible with A.c()
// }
//@Override//The method c() of type B must override or implement a supertype method
public static void c() {
System.out.println("");
}
}