public final class Schedule {
private final Date start;
private final Date end;
public Schedule(Date start, Date end) {
if (start.compareTo(end) > 0)
throw new IllegalArgumentException(start + " after " + end);
this.start = start;
this.end = end;
}
public Date getStart() {
return start;
}
public Date getEnd() {
return end;
}
}
类中有有参构造,应该手动添加无参构造,可添加后报错,不添加反而正常,求大神解释下为什么?
因为你设置两个final的Date,又没有初始化它们.
当你提供了一个无参的构造函数,又没有初始化时,编译器就会报错.
比如改成这样
public Schedule(){
start = new Date();
end = new Date();
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。