java面试题,请问B类继承A类,而且B类中重写A的方法,请问B中重写的方法可以覆盖了A的方法吗?why?
答案:3 悬赏:0 手机版
解决时间 2021-02-23 08:44
- 提问者网友:十年饮冰
- 2021-02-22 20:53
java面试题,请问B类继承A类,而且B类中重写A的方法,请问B中重写的方法可以覆盖了A的方法吗?why?
最佳答案
- 五星知识达人网友:上分大魔王
- 2021-02-22 22:19
覆盖了 你看下面的代码 数据数据的结果是:
Dervied tell name: null
Dervied print name: null
Dervied tell name: dervied
Dervied print name: dervied
public class Dervied extends Base {
private String name = "dervied";
public Dervied() {
tellName();
printName();
}
public void tellName() {
System.out.println("Dervied tell name: " + name);
}
public void printName() {
System.out.println("Dervied print name: " + name);
}
public static void main(String[] args){
new Dervied();
}
}
class Base {
private String name = "base";
public Base() {
tellName();
printName();
}
public void tellName() {
System.out.println("Base tell name: " + name);
}
public void printName() {
System.out.println("Base print name: " + name);
}
}
Dervied tell name: null
Dervied print name: null
Dervied tell name: dervied
Dervied print name: dervied
public class Dervied extends Base {
private String name = "dervied";
public Dervied() {
tellName();
printName();
}
public void tellName() {
System.out.println("Dervied tell name: " + name);
}
public void printName() {
System.out.println("Dervied print name: " + name);
}
public static void main(String[] args){
new Dervied();
}
}
class Base {
private String name = "base";
public Base() {
tellName();
printName();
}
public void tellName() {
System.out.println("Base tell name: " + name);
}
public void printName() {
System.out.println("Base print name: " + name);
}
}
全部回答
- 1楼网友:鱼芗
- 2021-02-23 00:10
应该是可以啊
- 2楼网友:逃夭
- 2021-02-22 22:59
你好!
可以覆盖,没有为什么,你在B中调用方法的时候,肯定是调用的重写的方法
如有疑问,请追问。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯