项目:求指定日期在一个星期中的天数
需求:
(一)对指定日期(两种方式)来进行求值
1 java.util.Date
2 直接输入年、月、日
功能列表:
(一)获得指定日期在一个星期中的天数
----------------------------------
这个功能可以从一个日历类(java.util.Calendar)得到,所以可以重用。
1 为了使用该功能必须构造一个日历类,所以必须把输入方式(2种)包装成日历类
2 自然是调用日历类提供的方法来完成求值
设计:
DateCommon
public getDayOfWeek(year:int,month:int,date:int):int
public getDayOfWeek(date:java.util.Date):int
代码:
import java.util.Calendar;
import java.util.Date;


class DateCommon
{

/** *//**
* 通过指定Date(java.util.Date)构造Calendar(java.util.Calendar)
*
* @param date
* 指定的日期
* @return
*/

private Calendar createCalendar(Date date)
{
Calendar calendar = Calendar.getInstance();

calendar.setTime(date);

return calendar;
}


/** *//**
*通过指定日期构造Calendar(java.util.Calendar)
*
* @param year年
* @param month月
* @param date日
* @return
*/

private Calendar createCalendar(int year, int month, int date)
{
Calendar calendar = Calendar.getInstance();

// Calendar中的月份和实际月份时间相差为1(它的1月份为0)
month = month - 1;

calendar.set(year, month, date);

return calendar;
}


/** *//** */

/** *//**
* 获得java.util.Calendar中的日期在一个星期中的天数
*/

private int getCalendarDayOfWeek(Calendar calendar)
{

int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);

return dayOfWeek;
}


/** *//** */

/** *//**
*获得 java.util.Date中的 指定日期在一个星期中的天数
*/

public int getDayOfWeek(Date date)
{
// 构造指定日期
Calendar calendar = createCalendar(date);

return getCalendarDayOfWeek(calendar);
}


/** *//** */

/** *//**
*获得指定日期在一个星期中的天数
*/

public int getDayOfWeek(int year, int month, int date)
{
// 构造指定日期
Calendar calendar = createCalendar(year, month, date);

return getCalendarDayOfWeek(calendar);
}


/** *//** */

/** *//**
* 业务入口
*/

public void service()
{

System.out.println(getDayOfWeek(2010, 8, 1));
}
}
主要是练习一下“正规”(我理解)的完成一个功能,暂时忽略掉健壮性!