覆盖Java代码

use*_*926 2 java

我试图了解我在使用此代码时遇到了什么问题,但我找不到答案.为什么它不在编译器中打印任何东西?

请帮忙.提前致谢.

public class ClassA {

     int x = 0;
     int y = 1;

     public void methodA() {

         System.out.println( "x is " + x + " , and y is " + y) ;
         System.out.println( "I am an instance of:  " + this.getClass().getName() ) ;
     }
}

class ClassB extends ClassA {

    int z = 3; 

    public static void main(String[] args) {

        ClassB obj1 = new ClassB();
        obj1.methodA();

    }
}
Run Code Online (Sandbox Code Playgroud)

Sur*_*tta 10

因为您只是编译,而不是运行代码.运行.它会将结果打印到控制台.

截至目前,您的代码中没有覆盖概念.每个孩子都是父母.您将可以访问该方法,并打印Parent(ClassA)的实现.

来到Overriding的概念,如果你想看到methodA()in 的实现ClassB,那么你需要覆盖它ClassB并提供相关的实现ClassB.