在 JAVA 中,是否可以在 super class 方法中打印一些东西,并在 sub class 中覆盖并添加更多信息?
In JAVA, is it possible to print something in super class method, and override and add more information to it in sub class?
public class superA {
public void display() {
System.out.println("In super class superA");
}
}
public class subB extends superA {
@Override
public void display() {
System.out.println("In sub class subB");
}
}
public class subC extends superA {
@Override
public void display() {
System.out.println("In sub class subC");
}
}
如果 sub class subB 的对象调用 display 方法,它应该给出如下输出:
(换行)在 super class superA
(换行)在 sub class subB
public class superA {
public void display() {
System.out.println("\nIn super class superA");
}
}
public class subB extends superA {
@Override
public void display() {
super.display();
System.out.println("\nIn sub class subB");
}
}
public class subC extends superA {
@Override
public void display() {
super.display();
System.out.println("\nIn sub class subC");
}
}
所有 classes 父子的方法名称都是相同的,当你想覆盖子 class 中具有相同名称的 superclass/parent class 方法时,你必须使用 super 关键字。
public class superA {
public void display() {
System.out.println("In super class superA");
}
}
public class subB extends superA {
@Override
public void display() {
System.out.println("In sub class subB");
}
}
public class subC extends superA {
@Override
public void display() {
System.out.println("In sub class subC");
}
}
如果 sub class subB 的对象调用 display 方法,它应该给出如下输出: (换行)在 super class superA (换行)在 sub class subB
public class superA {
public void display() {
System.out.println("\nIn super class superA");
}
}
public class subB extends superA {
@Override
public void display() {
super.display();
System.out.println("\nIn sub class subB");
}
}
public class subC extends superA {
@Override
public void display() {
super.display();
System.out.println("\nIn sub class subC");
}
}
所有 classes 父子的方法名称都是相同的,当你想覆盖子 class 中具有相同名称的 superclass/parent class 方法时,你必须使用 super 关键字。