public abstract int getActualMaximum(int field);
public int getActualMaximum(int field) { Calendar tmp = (Calendar)clone(); int max = tmp.getLeastMaximum(field); int end = tmp.getMaximum(field); tmp.set(field, max); for (; max < end; max++) { tmp.add(field, 1); if (tmp.get(field) != max + 1) break; } return max; }
	public abstract int getActualMaximum(int field);