java – 在另一个构造函数中使用“this”
发布时间:2020-12-15 05:23:30 所属栏目:Java 来源:网络整理
导读:假设你有一个带有这个构造函数的类: public SomeObj(int x,int y) { this.x = x; this.y = y;} 都好.但是现在如果你想克隆对象,我希望构造函数接受一个带有该类型对象的参数,因此在构造函数中可以复制所有(必要的)字段. public SomeObj(SomeObj objectToClo
假设你有一个带有这个构造函数的类:
public SomeObj(int x,int y) { this.x = x; this.y = y; } 都好.但是现在如果你想克隆对象,我希望构造函数接受一个带有该类型对象的参数,因此在构造函数中可以复制所有(必要的)字段. public SomeObj(SomeObj objectToClone) { ... } 但是现在以下哪两种方式更好?有哪些优点和缺点(性能(字节代码),可读性……)? // 1 public SomeObj(SomeObj objectToClone) { this.x = objectToClone.x; this.y = objectToClone.y; } // 2 public SomeObj(SomeObj objectToClone) { this(objectToClone.x,objectToClone.y); } 解决方法
亲自,我会和后者一起去.
在可能的情况下,我尝试使一个构造函数具有“真实”的主体,并使所有其他构建者委托给它.这并不总是可行的 – 特别是,不同的构造函数可能需要委托给不同的超级构造器 – 但很高兴知道有一个地方可以放置额外的初始化,日志记录,断点等等. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |