问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

this() 必须写在构造器的第一行!(因为在构造器之前是没有对象的):这句...

发布网友 发布时间:2024-03-29 17:15

我来回答

2个回答

热心网友 时间:2024-06-16 12:40

如果两个类之间发生了继承关系,那么在实例化子类的时候,JVM隐式的会为我们创建一个父类对象,子类的构造器会调用父类的构造器(super()),先实例化父类对象,然后再实例化子类对象,此时父类中的this就是子类对象;如果是直接实例化的父类对象,那么父类构造器中的this就是父类对象,先实例化父类对象,然后再实例化子类对象(子类中的this),然后调用子类构造器,在子类构造器中调用父类构造器(子类中的super)。
"因为在构造器之前是没有对象的",这句话体现在哪呢?
但是this()必须放在第一行,是因为在构造器之前是没有对象,为什么是这样解释的呢?

终上所述,这两个问题可以这样理解:构造器之前确实是没有对象的,但构造器里面是可以产生对象的,当你new对象的时候this()或者super()就要起作用了,而且必须是第一时间起作用,可以看出其实this()和super()的作用就是实例化对象。仔细阅读上面的总结你会发现,是实例化产生对象之后才能调用构造器,所以必须把this()或者super()放在第一行,实例化产生对象之后,才能执行构造器第二行,第三行的内容。
希望可以帮到你!
假期愉快&新年快乐!

热心网友 时间:2024-06-16 12:37

this() super()
是你如果想用传入当前构造器中的参数或者构造器中的数据调用其他构造器或者控制父类构造器时使用的,在一个构造器中你只能使用this()或者super()之中的一个,而且调用的位置只能在构造器的第一行,在子类中如果你希望调用父类的构造器来初始化父类的部分,那就用合适的参数来调用super(),如果你用没有参数的super()来调用父类的构造器(同时也没有使用this()来调用其他构造器),父类缺省的构造器会被调用,如果父类没有缺省的构造器,那编译器就会报一个错误。

为什么要在第一排呢?
example:
class A{
A() {
System.out.println("You call super class non-args constructor!");
}
}
class B extends A{
B() {
//这里,编译器将自动加上 super();
System.out.println("You call subclass constructor!");
}
B(int c){
System.out.println("wrong,wrong");
}
B(String n) {
这里为空 // super();
System.out.println("想想就是这样");
this();
//实际就是调用了B(){...},而B(){...}已经调用过一次,super();所以super()就被调用两次,也就是对A进行了两次初始化。而在实例化一个对象时,一 个 构造方法只能调用一次,这然显然是不对的.
}

B(double c){
this();
this(3);
//这里实际上也是调用两次super(),也就是对A进行两次初始化,所以其结果也不对
}
}

注:任意一个类,它都一定有父类,如果你没有建立该类的父类,那么该类的父类为Object;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
i9502联通卡放置用认准卡位 I9502,SIM1切换SIM网络上网问题 如何批量删除iphone5s通讯录 中联通信飞越JSY2000-FY(832端口)一般规格 中联通信飞越JSY2000-FY重要参数 JSY2000-FY如何设置离位转移? 特权分机如何代普通分机设置叫醒? 中联的JSY2000-FY如何用话机设置免打扰? 垂直分析法分析什么表 零基础学雅思一年多少费用 一角鲸在古代叫什么 一角鲸科的介绍1 一角鲸的形态特征5 独角鲸和抹香鲸哪种珍贵17 小说熬夜必看推荐 修改病句小乌龟们有时懒洋洋地散步在房间里? 岳阳最适合傍晚散步的地方11 我闻着梅花散步出来的香味,十分陶醉。修改病句9 修改病句我和妈妈去公园散步,一进门就看见了小狗一只,还有无颜...2 湿地公园的夏天是人们散步的好地方修改病句? 硫化物的溶解性怎么归纳 2024工程让全面停工吗 关于哲学 这道题为什么? 2015款奥迪a4l二手车7.5万元靠谱吗? 家乡菜园按春夏秋冬的顺序描写作文500242 作文家乡的果园按春夏秋冬的顺序写251 家乡的小溪作文400字(用春夏秋冬的顺序来写的)446 作文:我的家乡按春夏秋冬共六个自然段写192 按照春夏秋冬的顺序来描写燕鸽湖的作文三百字12 按照春夏秋冬的顺序写我的家乡真美啊一段话38 谁来解释一下,怎么编译总出来:对super的调用必须是构造函数中的第一... 耐克NIKE 俱乐部球迷斜挎包BA4291-017 这是哪个球队的 梯子的折叠方法是什么? 像DOIR,碧欧泉这样的进口化妆品,不管是小样还是什么都应该有中文标识字... 《海底两万里》为什么说那条独角鲸是“古怪的动物”169 为什么说那条独角鲸是”古怪的动物”19 走私独角鲸,会受到什么样的法律制裁? 独角鲸还有吗?149 2012年独角鲸灭绝了吗645 独角鲸是不是保护动物?54 独角鲸的角是什么形状的?7 独角鲸还活着吗?132 独角鲸是哪大类鲸?9 独角鲸的角是什么进化的`?62 喷漆的时候油漆里面加入胶水好吗?会有什么反应 请问各位惠州到云浮,自驾车最快的路线?? 惠州到云浮要多久? 商铺限经营戊类非燃烧物,在消防规范中有没有要求可以不设置烟感或... 葡萄花前,用什么菌药为主。 桶装水厂里有要求安装消防喷淋吗