○ ○ 2022-03-14 17:32 采纳率: 66.7%
浏览 20
已结题

关于#java#的问题:问题遇到的现象和发生背景

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法

```java
public class Hello{
public static void main(String[] args){
Person p =new Person("张三");
System.out.println(p.name);
}
}
class Person{
String name;
public Person(){
System.out.println("I am");
}
public Person(String name){
this();
this.name=name;
}
}

```想要达到的结果
无参构造器创建对象的时候就会调用一回,然后使用this()方法的时候应该再调用一回,但是输出时为什么只有一回"I am"?

  • 写回答

3条回答 默认 最新

  • Tomshidi 2022-03-14 17:46
    关注

    你的public Person(String name)是对无参构造函数的一个重载,你的new Person("张三")会调用public Person(String name),构造函数只会执行你指定的那一个,不会都执行一遍。
    因此你这里只会有一个"I am"输出。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月22日
  • 已采纳回答 3月14日
  • 创建了问题 3月14日

悬赏问题

  • ¥15 Python语言实验
  • ¥15 SAP HANA SQL 增加合计行
  • ¥20 用C#语言解决一个英文打字练习器,有偿
  • ¥15 srs-sip外部服务 webrtc支持H265格式
  • ¥15 在使用abaqus软件中,继承到assembly里的surfaces怎么使用python批量调动
  • ¥15 大一C语言期末考试,求帮助🙏🙏
  • ¥15 ch340驱动未分配COM
  • ¥15 Converting circular structure to JSON
  • ¥30 Hyper-v虚拟机相关问题,求解答。
  • ¥15 TSM320F2808PZA芯片 Bootloader