package org.apache.wicket.examples.guestbook;
import java.util.Date;
import org.apache.wicket.IClusterable;
public class Comment implements IClusterable {
private String text;
private Date date = new Date();
public Comment() {
}
public Comment(final Comment comment) {
this.text = comment.text;
this.date = comment.date;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
}
public String toString() {
return "[Comment date = " + date + ", text = " + text + "]";
}
}
Run Code Online (Sandbox Code Playgroud)
为什么其他的建设者在这里做?为什么Comment comment声明为final?
该final有你的情况是可选的.在某些项目/公司中,有一条规则,即所有方法和构造函数参数都被声明为final.
这个想法是你不应该给comment变量另一个值.
关于第一个问题("为什么其他的construtor在这里?"):这个构造函数是一个所谓的"复制构造函数".它获取现有注释并创建具有相同内容的新实例.