当前位置:  技术问答>java相关

有关Java构造函数的问题之三——继承性

    来源: 互联网  发布时间:2015-02-11

    本文导语:  假如有三个相互继承的类:test3继承了test2,而test2继承了test1。那么在test3的构造函数中super()调用的是哪个类构造函数?test3可以调用test1的构造函数吗?如果行,该怎么办? | 类的继承关系是这样的:子...

假如有三个相互继承的类:test3继承了test2,而test2继承了test1。那么在test3的构造函数中super()调用的是哪个类构造函数?test3可以调用test1的构造函数吗?如果行,该怎么办?

|
类的继承关系是这样的:子类在构造函数中没有明确使用super(...)的时候会缺省调用super(),这个关系一直上延,你试试下面的程序就明白了。
class test0{
public test0() {
System.out.println("test0");
}
}
class test1 extends test0{
public test1() {
//super();
System.out.println("test1");
}
}
public class test extends test1{
public test() {
//super();
System.out.println("test");
}
public static void main(String args[]) {
test t=new test();
}
}
你可以把super()前的注释取消,结果都是一样的。



|
如果你继承了一个类后,当你创建这个类的对象时,在初始化中,会自动调用其父类的构造函数
当你new test3时,先调用test3的构造函数,因为test3 extends test2,所以先调用test2的构造函数,test2又extends test1,所以对test1的构造函数就行调用.
执行完test1构造函数中的主体后,执行test2构造函数里的主体,最后执行test3的主体.

|

super指向*父类*,如果*父类*的构造函数中也super了的话,当然会再调用*爷类*了:)

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 怎么查找有内核函数及其有关信息???
  • 有关函数隐藏的问题
  • 有关sin,con,tan函数的问题
  • 有关system函数打开网页的
  • 有关在makefile中使用shell函数的问题
  • linux下有这样的函数吗?有关系统时间
  • Linux编程:有关read()函数的问题
  • 有关system()这个函数
  • 有关 grep命令 之 函数查找时 屏蔽link的问题
  • linux下有这样的函数吗?有关系统时间 iis7站长之家
  • linux/unix里的进程互斥问题 ,有关lockf()函数!
  • MYSQL中有关SUM字段按条件统计使用IF函数(case)问题
  • 这个问题和fclose()函数有关系么?
  • 还是有关fork的问题,fork在一个函数中调用,我被搞胡涂了
  • 有关线程的一些数据结构及函数求教。。
  • 有关时间函数gmtime()的问题?(急需,谢谢先!)
  • 请教有关 fork 和 sprintf 函数的问题
  • 有关sql server中日期函数理解的一些测试
  • php中有关字符串的4个函数substr、strrchr、strstr、ereg介绍和使用例子
  • 一个有关readdir函数的问题~~~
  • ​有关Docker的八个令人难以置信的事实
  • 有关内码转换(跟HttpServletRequest有关)
  • 求有关png图像处理的libpng库的有关中文资料
  • 大家推荐一下有关LINUX7有关的网络编程的书。最好是比较全面的!比较经典的。
  • 求教有关smartupload的问题,有关就给分!!
  • 有关KDevelop-3.0.4-0.1.i386.rpm的有关软件包
  • 有关在sco unix5.0.4下有关网卡设置的问题(非常急,高分相送)
  • 有关snmp的一个很菜,但是困扰了我很久的问题,有关工作原理的,望大家赐教
  • 有关KDevelop编程的资料
  • 有关集群与数据同步
  • 请教有关英文简历方面的词句!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3