項目:求指定日期在一個星期中的天數
需求:
(一)對指定日期(兩種方式)來進行求值
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));
}
}
主要是練習一下“正規”(我理解)的完成一個功能,暫時忽略掉健壯性!