java的子类和父类中的super、this的区别?

java中子类继承父类,并且没有重写父类中的某一个方法add(),那么对于子类而言,要使用方法add(),用super.add()和this.add()是不是完全没有区别... java中子类继承父类,并且没有重写父类中的某一个方法add(),那么对于子类而言,要使用方法add(),用super.add()和this.add()是不是完全没有区别?
注 :(add()只是一个普通方法)
继续上的问题:
如果在子类中,调用父类的方法,不写this,也不写super,这样调用的是谁的方法,父类,还是子类的?
展开
 我来答
百度网友fd50fe0
推荐于2017-09-30 · 超过18用户采纳过TA的回答
知道答主
回答量:78
采纳率:0%
帮助的人:37.8万
展开全部
对,没重写那super.add() 和this.add() 都是调的父类的方法, 没什么区别,告仿如果重写了this.add()就默认调本类的方法,super就默认调父类的方法,

再在子类中,都不写的话,如果有重写父类的add()方法的话就默认调本类的add()方法, 如果本类没有重写就调父类的方法,

其实这种问题建议你直闷咐接写一个小代码一目了然,比如:
class A{

void add(){
System.out.println("天下无双");
}
}
class B extends A{
void add(){

System.out.println("天下无贼");
}
void aa(){
add();
super.add();
}
}
public class aaaaaaa {

public static void main(String[] args) {
A a=new A();
B b=new B();
b.aa();

}

}

你可以试试, 我也是新手, 对这种问题还是比较喜欢自己动手, 听别人袜罩纤说总有点云里雾里的, 可以加我Q互相讨论一下494792360
woshidaniel
推荐于2017-09-16 · TA获得超过9240个赞
知道小有建树答主
回答量:1760
采纳率:96%
帮助的人:951万
展开全部

在JAVA类中使用super来引用父类的成分,用this来引用当前对象,如果一个类从另外一个类继承,new这个子类的实例对象后。使用super来引用父类对象,使用this引用当前对象。

举例:

public class F{//定义父类早袭孝
   public void s(){//定义父类方法s
   }
}
public class K extends F{//定义子类K,继承父类F
   public void s(){//定义子类方法s,覆盖父类禅困s
   }
   public void k2(){
     super.s();//通陆稿过super,指明调用父类的方法s
     this.s();//通过this,指明调用当前类的方法s
   }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帖菲支琬
2020-04-28 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.2万
采纳率:28%
帮助的人:903万
展开全部
当有相同的属性或者方法是this子类表示调用自己的属性或者方法,super调用父类的属性或者方法。当子类调用的隐悉属性哪携并方法在子类中不存在时,那么this和super都是调用父类的属性或者方李迹法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhshb54321
2013-03-27
知道答主
回答量:70
采纳率:0%
帮助的人:21.1万
展开全部
默认是 this.xxx
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
乌微月2S
2013-03-27 · TA获得超过5037个赞
知道大有可为答主
回答量:5361
采纳率:42%
帮助的人:2884万
展开全部
没有重写的话就没有什么区别。
追问
继续上的问题:
如果在子类中,调用父类的方法,不写this,也不写super,这样调用的是谁的方法,父类,还是子类的?
追答
重写是子类的啊。不重写是父类。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式