首先,这个图书管理系统自定义一个final常量不能更改,用作图书馆借阅归还的最晚时间,也可以自定义归还时间。
然后,先获取用户借阅时间,再用SimpleDataFormata组件来格式化日期(yyyy-MM-dd),再将获取的时间加在系统的时间上得到用户自定义的归还时间。
最后,再通过方法的重载实现用户自定义的方法,获得系统最晚归还时间。
下面我就来实现这个程序!!!
①
public final static int deadline = 15; //定义一个不可更改的系统规定最晚归还时间,final常量
②
public static String getReturnDate(int day) {
if (day > deadline)
return null; //判断用户输入的天数是否大于系统规定的最晚归还时间,大于就返回null
Date SystemDate = new Date();
long time = SystemDate.getTime() + day * 24 * 60 * 60 * 1000; //增加借阅天数,要将天数化为毫秒
Date rentDate = new Date(time); //获得归还日期
SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd"); //格式化日期
return f.format(rentDate);
}
③
public static String getReturnDate() { //重载方法
return getReturnDate(deadline); //返回系统最晚归还日期
}
Conclusion
笔者认为最后的一个难点就在于重载这个函数和SimpleDataFormat这组件,一开始拿到这个题我是一脸懵逼啊。。
最后我们总结和温习一下方法的重载:方法的重载是指一个类中可以定义有相同名字、但参数不同的多个方法。各方法之间的①参数个数不同、②类型不同、③排列顺序不同即可构成重载。
当然我这里就属于第一种情况,参数的个数不同。