1、月份从0开始。
2、set方法修改修改时间后,若比合理日期大时cal自动进位,例如6-31会变成7-1;add方法超出正常范围时上级字段进位,下级字段修改为变化最小的值。roll方法超出正常范围时上级字段不变,下级字段同add方法。
3、set方法延迟修改,修改只是暂时修改日历字段,所代表的时间不变,直到下次get()、add()、roll()方法是才会重新计算时间;
4、设置Calendar容错性,Calendar.setLenient(true/false); 当为false时,set方法设置字段超出正常范围时会抛出异常。