Java继承和静态方法
例子
在Java中,父类和子类都可以有同名的静态方法。但是在这种情况下,子类中静态方法的实现隐藏了父类的实现,而不是方法覆盖。例如:
class StaticMethodTest {
//静态方法和继承
public static void main(String[] args) {
Parent p = new Child();
p.staticMethod(); //打印内部父级
((Child) p).staticMethod(); //打印里面的孩子
}
static class Parent {
public static void staticMethod() {
System.out.println("Inside Parent");
}
}
static class Child extends Parent {
public static void staticMethod() {
System.out.println("Inside Child");
}
}
}静态方法绑定到类而不是实例,并且此方法绑定发生在编译时。由于在第一次调用staticMethod(),父类参考p使用,Parent的版本staticMethod()被调用。在第二种情况下,我们确实castp到Childclass中,Child'sstaticMethod()执行。
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下