解释一下这个Java程序,想知道那个构造方法是怎么返回值的,返回的是什么值?这个程序是按照怎样的顺

解释一下这个Java程序,想知道那个构造方法是怎么返回值的,返回的是什么值?这个程序是按照怎样的顺序执行的??... 解释一下这个Java程序,想知道那个构造方法是怎么返回值的,返回的是什么值?这个程序是按照怎样的顺序执行的?? 展开
 我来答
kele林
2014-10-31
知道答主
回答量:6
采纳率:0%
帮助的人:3.2万
展开全部
这个问题其实比较简单呀.. 不过如果要理解内部的一些原理就比较麻烦了.. 首先是new 了一个House对象,这时它的执行顺序应该是 先执行House类中的static代码块,但是由于没有,所以没有执行,然后就去找House类中的成员变量初始化(也就是去new Window对象出来,执行顺序也是这样的),最后再执行自己的构造函数. 构造方法是不能有返回值的,它只能有不同的参数列表~
总之就是,有static的,先执行static,有多个static则按顺序执行,然后再初始化成员变量,同样是按顺序执行.最后才调用构造方法. 因为在初始化成员变量的时候,也是按这个顺序执行的,就有一种递归的感觉.
更多追问追答
追问
是不是当看到第20行的House h=new House();时,就开始去执行House中的引用成员变量w1,w2和w3,也就是输出执行上面的Window?
是不是看到Window w1=new Window(1)时,就去执行Window啦?
爱已沉殇
2014-10-31 · TA获得超过696个赞
知道小有建树答主
回答量:1402
采纳率:0%
帮助的人:545万
展开全部
构造方法没有返回值
更多追问追答
追问
嗯嗯,那是怎么输出来那些值的呢??
追答
过程是这样的:
main方法new一个House对象,先加载House类,初始化静态成员,再初始化成员变量,则要new3个window对象,参数分别是,1,2,3,则输出,“Window(1),Window(2),Window(3),”初始化完毕,再调用House构造方法,输出“House()”
还要new一个window对象,参数33,则输出“Window(33)”,然后这个house对象要调用f()方法,f方法是,输出“f()”
则全部结果就是:
Window(1)
Window(2)
Window(3)
House()
Window(33)
f()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式