JAVA父类调用子类的方法与子类调用父类的方法有什么不同?
答案:1 悬赏:20 手机版
解决时间 2021-03-15 03:23
- 提问者网友:感性作祟
- 2021-03-14 06:50
JAVA父类调用子类的方法与子类调用父类的方法有什么不同?
最佳答案
- 五星知识达人网友:北方的南先生
- 2021-03-14 08:25
class Base{
Base(){
}
public void m(){
}
}
class Sub extends Base{
Sub(){
super(); //调用父类的构造方法
super.m();//调用父类的方法
}
public void n(){
}
public static void main(String[] args){
Sub s = new Sub();
s.m();//这里应该理解为:
子类继承了父类,那么这个m()应该属于子类的了!,所以我们在重写的时候要覆盖父类的方法! 那么这里算调用子类自己的方法了
Base b = new Base();
b.m();//父类对象调用自己方法
//b.n();编译错误,因为子类的方法对父类不可见!
}
}
父类调用子类的方法 只能是在 父类里构造子类的对象,通过对象来调用!
如果子类的是静态方法,那么直接拿类调用!
子类调用父类的方法 用 super.methodName(); 只能在非静态方法
里这样调用
补充:
就是 在 Base 类里
Sub s = new Sub();
s.n();
Base(){
}
public void m(){
}
}
class Sub extends Base{
Sub(){
super(); //调用父类的构造方法
super.m();//调用父类的方法
}
public void n(){
}
public static void main(String[] args){
Sub s = new Sub();
s.m();//这里应该理解为:
子类继承了父类,那么这个m()应该属于子类的了!,所以我们在重写的时候要覆盖父类的方法! 那么这里算调用子类自己的方法了
Base b = new Base();
b.m();//父类对象调用自己方法
//b.n();编译错误,因为子类的方法对父类不可见!
}
}
父类调用子类的方法 只能是在 父类里构造子类的对象,通过对象来调用!
如果子类的是静态方法,那么直接拿类调用!
子类调用父类的方法 用 super.methodName(); 只能在非静态方法
里这样调用
补充:
就是 在 Base 类里
Sub s = new Sub();
s.n();
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯