青柠微恙biubiu 2017-08-14 03:56 采纳率: 25%
浏览 1680
已采纳

关于构造器调用同一个类另个一构造器的问题

在学习CoreJava中,看到一个构造器可以调用同一个类另个一构造器的部分,

class Employee
{
private static int nextId;
private int id;
private String name;
private double salary;

 static
 {
     Random generator=new Random();
     nextId=generator.nextInt(1000)+1;
 }

 {
     id=nextId;
     nextId++;
 }
public Employee(String name,double salary)
{
    this.name=name;
    this.salary=salary;
}

public Employee(double s)
{
    this("Employee#"+nextId,s);
}

public Employee()
{

}

}

this("Employee#"+nextId,s); 这句话没看懂,请问有人能帮忙解释一下吗?

  • 写回答

5条回答 默认 最新

  • 鼠晓 博客专家认证 2017-08-14 04:06
    关注

    this("Employee#"+nextId,s);,

    你可以把构造器看作普通的方法,,返回类型为 当前类的类型,,那么所有构造方法返回类型都是一致的(这只是一种类比)

      public Employee Employee(double s)
    {
        return this("Employee#"+nextId,s);
    }
    
    public Employee Employee(String name,double salary)
    {
        this.name=name;
        this.salary=salary;
            return employee;
    }
    

    注意:
    这个例子只是为了方便理解,,,只是一种类比,,实际中肯定是不可以这样写的

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

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题