Ⅰ java中Data類如何創建一個日期對象
這個指的是調用了data的初始化方法。
data
data
=
new
date();
這樣是創建了一個date對象,它的空構造方法可能進行了一些默認的初始化動作,例如給內部的變數賦值等等,initial這個方法可能是另一種初始化其他對象的方法,其實和我們平時寫的方法是一樣的
Ⅱ java中的Date是怎麼使用的
1、代碼:System.out.println(new java.util.Date());
輸出:Thu Jan 27 14:43:28 CST 2011
2、代碼:System.out.println(new java.util.Date().toLocaleString());
輸出:2011-1-27 14:45:21
不過現在toLocaleString()方法已過時,由DateFormat.format(Date date)取代。
3、代碼:
DateFormat ddf = DateFormat.getDateInstance();
DateFormat dtf = DateFormat.getTimeInstance();
DateFormat ddtf = DateFormat.getDateTimeInstance();
Date date = new Date();
System.out.println("日期:" + ddf.format(date));
System.out.println("時間:" + dtf.format(date));
System.out.println("日期時間:" + ddtf.format(date));
SimpleDateFormat sdf = (SimpleDateFormat) DateFormat.getDateTimeInstance();
System.out.println("日期時間:" + sdf.format(date));
輸出:
日期:2011-2-9
時間:11:16:02
日期時間:2011-2-9 11:16:02
日期時間:2011-2-9 11:16:02
以上是在window系統下,linux系統下不能這么處理,linux系統下用以上獲取回來的初始時間格式與此不同。
Ⅲ 求解JAVA題,創建一個Date類,類中有年,月,日3個成員變數,要求實現以下功能
package arraylist;
public class Date
{
private int year;
private int month;
private int day;
public Date(int year, int month, int day)
{
this.setYear(year);
this.setMonth(month);
this.setDay(day);
}
public void setDate(int year, int month, int day)
{
this.setYear(year);
this.setMonth(month);
this.setDay(day);
}
public int getYear()
{
return year;
}
public void setYear(int year)
{
if (year > 0 && year < 2015)
{
this.year = year;
}
else
{
year = -1;
}
}
public int getMonth()
{
return month;
}
public void setMonth(int month)
{
if (month > 0 && month <= 12)
{
this.month = month;
}
else
{
month = -1;
}
}
public int getDay()
{
return day;
}
public void setDay(int day)
{
if (day >= 1 && day <= 31)
{
this.day = day;
}
else
{
day = -1;
}
}
public void addOneDay()
{
switch (this.getMonth())
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
if (this.getDay() != 31)
{
this.setDay(this.getDay() + 1);
}
else
{
if (this.getMonth() == 12)
{
this.setYear(this.getYear() + 1);
this.setMonth(1);
this.setDay(1);
}else{
this.setMonth(this.getMonth() + 1);
this.setDay(1);
}
}
break;
case 4:
case 6:
case 9:
case 11:
if (this.getDay() != 30)
{
this.setDay(this.getDay() + 1);
}
else
{
this.setMonth(this.getMonth() + 1);
this.setDay(1);
}
break;
case 2:
if (this.getYear() % 4 == 0 && this.getYear() % 100 != 0 || this.getYear() % 400 == 0)
{
if (this.getDay() != 29)
{
this.setDay(this.getDay() + 1);
}
else
{
this.setMonth(this.getMonth() + 1);
this.setDay(1);
}
}else{
if (this.getDay() != 28)
{
this.setDay(this.getDay() + 1);
}
else
{
this.setMonth(this.getMonth() + 1);
this.setDay(1);
}
}
}
}
public void display(){
System.out.println("你需要的日期是" + this.getYear() + "年" + this.getMonth() + "月" + this.getDay() + "日");
}
public static void main(String [] args){
Date d = new Date(1999, 11, 30);
d.display();
d.addOneDay();
d.display();
}
}
Ⅳ java語言中的date類及方法的用法
Date和Calendar是Java類庫里提供對時間進行處理的類,由於日期在商業邏輯的應用中占據著很重要的地位,所以在這里想對這兩個類進行一個基本的講解,由於技術有限,不到之處請指正。
Date類顧名思義,一看就知道是和日期有關的類了,這個類最主要的作用就是獲得當前時間了,然而這個類裡面也具有設置時間以及一些其他的功能,可是由於本身設計的問題,這些方法卻遭到眾多批評,而這些遭受批評的功能都已移植到另外一個類裡面,這就是今天要講到的第二個類Calendar裡面。
在講兩個類之前,這里又不能不多提一個類,那就是DateFormat類,這個類是用來格式化日期的,稍後也會講到。
首先,讓我們來看一個獲取當前時間的例子:
Date date = new Date();
System.out.println(date.getTime());上面的語句首先創建了Date的一個對象,接著使用getTime方法獲得當前的時間,但是注意了,輸出後的結果確實一串長整型的數字,這是為什麼?實際上這是系統根據當前時間計算出來的一個long型的數,至於是如何計算出來的就不在本文中講述了,那既然這樣的話又如何顯示正確的時間呢?這就要利用到上面的DateFormat類了,這個類是一個基類,它有一個子類是SimpleDateFormat,具體用法請看下面的代碼:
Date date = new Date();
SimpleDateFormat dateFm = new SimpleDateFormat("EEEE-MMMM-dd-yyyy");
System.out.println(dateFm.format(date));這段代碼開始創建了一個Date的對象,用來獲取當前時間,而重點就在於後面的SimpleDateFormat對象,這個對繼承了DateFormat,利用format方法對Date對象進行格式化,然後輸出,而格式的定製是由用戶定製的,EEEE代表星期,MMMM代表月份,而dd代表日,yyyy代表年。使用這個方法就可以根據用戶自定義的格式進行輸出時間。
上面介紹了由用戶自定義格式的輸出時間,下面將來介紹通過JAVA類庫提供的標准格式輸出時間,這就要用到DateFormat類了,請看以下代碼:
Date date = new Date();
DateFormat dateFm = DateFormat.getDateTimeInstance(DateFormat.SHORT,
DateFormat.SHORT);
System.out.println(dateFm.format(date));這里使用的方法和用戶自定義的方法差不多,只是這里使用的是一個抽象類,由於DateFormat是一個抽象類,所以它不能通過構造函數構造對象,在這里是通過getDateTimeInstance()方法獲得該對象,而所傳遞的參數就是DateFormat裡面定義的一些常量,系統根據這些常量輸出當前時間,由於這里使用的是getDateTimeInstance方法,所以將傳遞兩個常量參數,用來分別格式化日期和當前的時間。
上面講述了如何獲得系統時間以及如何格式化輸出,那如果想獲取或者設置時間當中的某一部分又該如何呢?例如年,月,日。這就要靠Calendar這個類了,這個類也是一個抽象類,它有一個子類GregorianCalendar,接下來我會利用這個子類來演示這個過程,請看以下代碼:
DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL);
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(new Date());
System.out.println("System Date: " + dateFormat.format(cal.getTime()));
cal.set(GregorianCalendar.DAY_OF_WEEK,GregorianCalendar.FRIDAY);
System.out.println("After Setting Day of Week to Friday: " +
dateFormat.format(cal.getTime()));
這段代碼當中,首先創建了一個DateFormat對象進行格式設置,接著創建了一個GregorianCalendar對象cal,接著使用cal.setTime()方法設置cal對象中的時間為當前時間,然後通過format格式化由cal.getTime()返回的時間進行輸出,後面利用set方法設置cal的日期為當前星期的FRIDAY,此時cal中存儲的時間就是這個星期五的該時刻,而後面利用format格式化輸出,假如當前時間為2005年1月27日星期4的11點30分,那麼最後將那句將會輸出2005年1月28日星期5的11點30分。
Ⅳ java中Date的使用
java語言中的date類介紹及使用
在JDK1.0中,Date類是唯一的一個代表時間的類,但是由於Date類不便於實現國際化,所以從JDK1.1版本開始,推薦使用Calendar類進行時間和日期處理。這里簡單介紹一下Date類的使用。
1、使用Date類代表當前系統時間
Date d = new Date();
System.out.println(d);
使用Date類的默認構造方法創建出的對象就代表當前時間,由於Date類覆蓋了toString方法,所以可以直接輸出Date類型的對象,顯示的結果如下:
Sun Mar 08 16:35:58 CST 2009
在該格式中,Sun代表Sunday(周日),Mar代表March(三月),08代表8號,CST代表China Standard Time(中國標准時間,也就是北京時間(東八區))。
2、使用Date類代表指定的時間
Date d1 = new Date(2009-1900,3-1,9);
System.out.println(d1);
使用帶參數的構造方法,可以構造指定日期的Date類對象,Date類中年份的參數應該是實際需要代表的年份減去1900,實際需要代表的月份減去1以後的值。例如上面的示例代碼代表就是2009年3月9號。
實際代表具體的年月日時分秒的日期對象,和這個類似。
3、獲得Date對象中的信息
Date d2 = new Date();
//年份
int year = d2.getYear() + 1900;
//月份
int month = d2.getMonth() + 1;
//日期
int date = d2.getDate();
//小時
int hour = d2.getHours();
//分鍾
int minute = d2.getMinutes();
//秒
int second = d2.getSeconds();
//星期幾
int day = d2.getDay();
System.out.println("年份:" + year);
System.out.println("月份:" + month);
System.out.println("日期:" + date);
System.out.println("小時:" + hour);
System.out.println("分鍾:" + minute);
System.out.println("秒:" + second);
System.out.println("星期:" + day);
使用Date類中對應的get方法,可以獲得Date類對象中相關的信息,需要注意的是使用getYear獲得是Date對象中年份減去1900以後的值,所以需要顯示對應的年份則需要在返回值的基礎上加上1900,月份類似。在Date類中還提供了getDay方法,用於獲得Date對象代表的時間是星期幾,Date類規定周日是0,周一是1,周二是2,後續的依次類推。
4、Date對象和相對時間之間的互轉
Date d3 = new Date(2009-1900,3-1,10);
long time = 1290876532190L;
//將Date類的對象轉換為相對時間
long t = d3.getTime();
System.out.println(t);
//將相對時間轉換為Date類的對象
Date d4 = new Date(time);
System.out.println(d4);
使用Date對象中的getTime方法,可以將Date類的對象轉換為相對時間,使用Date類的構造方法,可以將相對時間轉換為Date類的對象。經過轉換以後,既方便了時間的計算,也使時間顯示比較直觀了。
Ⅵ java中對象的創建如Date類的對象;new Date();那麼對對象的操作:String s=new Date().toString();是嘛意思
new Date(); 表示獲取系統當前日期,
String s=new Date().toString();表示把獲取的當前系統日期從日期類型轉換成String類型,要想按時間格式輸出,必須格式化S
格式:DateFormat df=new SimpleDateFormat(yyyy-MM-dd HH:mm:ss)
String str=df.format(s);
System.out.println(str);
輸出值的格式:2010-12-17 18:36:12
Ⅶ java 怎麼創建一個date對象
publicstaticvoidmain(String[]args){
Datedate=newDate();
GregorianCalendargc=newGregorianCalendar();
gc.set(Calendar.YEAR,2013);//設置年
gc.set(Calendar.MONTH,8);//這里0是1月..以此向後推
gc.set(Calendar.DAY_OF_MONTH,29);//設置天
gc.set(Calendar.HOUR_OF_DAY,5);//設置小時
gc.set(Calendar.MINUTE,7);//設置分
gc.set(Calendar.SECOND,6);//設置秒
gc.set(Calendar.MILLISECOND,200);//設置毫秒
date=gc.getTime();
System.out.println(newSimpleDateFormat("yyyy年MM月dd日hh時mm分ss秒SSS毫秒").format(date));
}
Ⅷ Java中如何設置Date對象的年月日
Date
public Date(int year,
int month,
int day)
參數:
year - year 減去 1900,它必須是 0 到 8099 之間的數。(注意,8099 是由 9999 減去 1900 得到的。)
month - 0 到 11 之間的數
day - 1 到 31 之間的數
測試代碼如下:
import java.util.Date;
public class Test {
public static void main(String args[]){
Date date = new Date(2010-1900,1,10);
System.out.println(date);
}
}
運行結果:
Wed Feb 10 00:00:00 CST 2010
希望對你有幫助。。。。。。仍有問題可以HI我。。。。
Ⅸ java里怎麼自定義一個日期!
在舊版本的jdk中,Java的日期/時間類的定義並不一致,在java.util和java.sql的包中都有日期類,此外用於格式化和解析的類在java.text.SimpleDateFormat包中定義。
java.util.Date是在除了SQL語句的情況下面使用的。
java.sql.Date是針對SQL語句使用的,它只包含日期而沒有時間部分
它們都有getTime方法返回毫秒數,自然就可以直接構建。java.util.Date 是 java.sql.Date 的父類,前者是常用的表示時間的類,我們通常格式化或者得到當前時間都是用他,後者之後在讀寫資料庫的時候用他,因為PreparedStament的setDate()的第2參數和ResultSet的getDate()方法的第2個參數都是java.sql.Date。
java.sql.Date轉為java.util.Date
java.sql.Date date=new java.sql.Date();
java.util.Date d=new java.util.Date (date.getTime());
java.util.Date轉為java.sql.Date
java.util.Date utilDate=new Date();
java.sql.Date sqlDate=new java.sql.Date(utilDate.getTime());
java.util.Date utilDate=new Date();
java.sql.Date sqlDate=new java.sql.Date(utilDate.getTime());
java.sql.Time sTime=new java.sql.Time(utilDate.getTime());
java.sql.Timestamp stp=new java.sql.Timestamp(utilDate.getTime());
這里所有時間日期都可以被SimpleDateFormat格式化format()
SimpleDateFormat f=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
f.format(stp);
f.format(sTime);
f.format(sqlDate);
f.format(utilDate)
java.sql.Date sqlDate=java.sql.Date.valueOf(" 2005-12-12");
utilDate=new java.util.Date(sqlDate.getTime());
另類取得年月日的方法:
import java.text.SimpleDateFormat;
import java.util.*;
java.util.Date date = new java.util.Date();
//如果希望得到YYYYMMDD的格式SimpleDateFormat
sy1=new SimpleDateFormat("yyyyMMDD");
String dateFormat=sy1.format(date);
//如果希望分開得到年,月,日SimpleDateFormat
sy=new SimpleDateFormat("yyyy");
SimpleDateFormat sm=new SimpleDateFormat("MM");
SimpleDateFormat sd=new SimpleDateFormat("dd");
String syear=sy.format(date);
String smon=sm.format(date);
String sday=sd.format(date);
注意啦!!!在JAVA 8中有了日期的新的表示方式。在java.time包中。
Java 8日期/時間( Date/Time)API是開發人員最受追捧的變化之一,Java從一開始就沒有對日期時間處理的一致性方法,因此日期/時間API也是除Java核心API以外另一項倍受歡迎的內容。
為什麼我們需要新的Java日期/時間API?
在開始研究Java 8日期/時間API之前,讓我們先來看一下為什麼我們需要這樣一個新的API。在Java中,現有的與日期和時間相關的類存在諸多問題,其中有:
1. Java的日期/時間類的定義並不一致,在java.util和java.sql的包中都有日期類,此外用於格式化和解析的類在java.text包中定義。
2. java.util.Date同時包含日期和時間,而java.sql.Date僅包含日期,將其納入java.sql包並不合理。另外這兩個類都有相同的名字,這本身就是一個非常糟糕的設計。
3. 對於時間、時間戳、格式化以及解析,並沒有一些明確定義的類。對於格式化和解析的需求,我們有java.text.DateFormat抽象類,但通常情況下,SimpleDateFormat類被用於此類需求。
4. 所有的日期類都是可變的,因此他們都不是線程安全的,這是Java日期類最大的問題之一。
5. 日期類並不提供國際化,沒有時區支持,因此Java引入了java.util.Calendar java.util.TimeZone類,但他們同樣存在上述所有的問題。
在現有的日期和日歷類中定義的方法還存在一些其他的問題,但以上問題已經很清晰地表明:Java需要一個健壯的日期/時間類。這也是為什麼Joda Time在Java日期/時間需求中扮演了高質量替換的重要角色。
Java 8日期/時間API是JSR-310的實現,它的實現目標是克服舊的日期時間實現中所有的缺陷,新的日期/時間API的一些設計原則是:
1. 不變性:新的日期/時間API中,所有的類都是不可變的,這對多線程環境有好處。
2. 關注點分離:新的API將人可讀的日期時間和機器時間(unix timestamp)明確分離,它為日期(Date)、時間(Time)、日期時間(DateTime)、時間戳(unix timestamp)以及時區定義了不同的類。
3. 清晰:在所有的類中,方法都被明確定義用以完成相同的行為。舉個例子,要拿到當前實例我們可以使用now()方法,在所有的類中都定義了format()和parse()方法,而不是像以前那樣專門有一個獨立的類。為了更好的處理問題,所有的類都使用了工廠模式和策略模式,一旦你使用了其中某個類的方法,與其他類協同工作並不困難。
4. 實用操作:所有新的日期/時間API類都實現了一系列方法用以完成通用的任務,如:加、減、格式化、解析、從日期/時間中提取單獨部分,等等。
5. 可擴展性:新的日期/時間API是工作在ISO-8601日歷系統上的,但我們也可以將其應用在非IOS的日歷上。
Java日期/時間API包含以下相應的包。
1. java.time包:這是新的Java日期/時間API的基礎包,所有的主要基礎類都是這個包的一部分,如:LocalDate, LocalTime, LocalDateTime, Instant, Period, Duration等等。所有這些類都是不可變的和線程安全的,在絕大多數情況下,這些類能夠有效地處理一些公共的需求。
2. java.time.chrono包:這個包為非ISO的日歷系統定義了一些泛化的API,我們可以擴展AbstractChronology類來創建自己的日歷系統。
3. java.time.format包:這個包包含能夠格式化和解析日期時間對象的類,在絕大多數情況下,我們不應該直接使用它們,因為java.time包中相應的類已經提供了格式化和解析的方法。
4. java.time.temporal包:這個包包含一些時態對象,我們可以用其找出關於日期/時間對象的某個特定日期或時間,比如說,可以找到某月的第一天或最後一天。你可以非常容易地認出這些方法,因為它們都具有「withXXX」的格式。
5. java.time.zone包:這個包包含支持不同時區以及相關規則的類。
新舊API的對比圖:
publicclassTimeIntroction{
publicstaticvoidtestClock()throwsInterruptedException{
//時鍾提供給我們用於訪問某個特定時區的瞬時時間、日期和時間的。
Clockc1=Clock.systemUTC();//系統默認UTC時鍾(當前瞬時時間System.currentTimeMillis())
System.out.println(c1.millis());//每次調用將返回當前瞬時時間(UTC)
Clockc2=Clock.systemDefaultZone();//系統默認時區時鍾(當前瞬時時間)
Clockc31=Clock.system(ZoneId.of("Europe/Paris"));//巴黎時區
System.out.println(c31.millis());//每次調用將返回當前瞬時時間(UTC)
Clockc32=Clock.system(ZoneId.of("Asia/Shanghai"));//上海時區
System.out.println(c32.millis());//每次調用將返回當前瞬時時間(UTC)
Clockc4=Clock.fixed(Instant.now(),ZoneId.of("Asia/Shanghai"));//固定上海時區時鍾
System.out.println(c4.millis());
Thread.sleep(1000);
System.out.println(c4.millis());//不變即時鍾時鍾在那一個點不動
Clockc5=Clock.offset(c1,Duration.ofSeconds(2));//相對於系統默認時鍾兩秒的時鍾
System.out.println(c1.millis());
System.out.println(c5.millis());
}
publicstaticvoidtestInstant(){
//瞬時時間相當於以前的System.currentTimeMillis()
Instantinstant1=Instant.now();
System.out.println(instant1.getEpochSecond());//精確到秒得到相對於1970-01-0100:00:00UTC的一個時間
System.out.println(instant1.toEpochMilli());//精確到毫秒
Clockclock1=Clock.systemUTC();//獲取系統UTC默認時鍾
Instantinstant2=Instant.now(clock1);//得到時鍾的瞬時時間
System.out.println(instant2.toEpochMilli());
Clockclock2=Clock.fixed(instant1,ZoneId.systemDefault());//固定瞬時時間時鍾
Instantinstant3=Instant.now(clock2);//得到時鍾的瞬時時間
System.out.println(instant3.toEpochMilli());//equalsinstant1
}
(){
//使用默認時區時鍾瞬時時間創建Clock.systemDefaultZone()-->即相對於ZoneId.systemDefault()默認時區
LocalDateTimenow=LocalDateTime.now();
System.out.println(now);
//自定義時區
LocalDateTimenow2=LocalDateTime.now(ZoneId.of("Europe/Paris"));
System.out.println(now2);//會以相應的時區顯示日期
//自定義時鍾
Clockclock=Clock.system(ZoneId.of("Asia/Dhaka"));
LocalDateTimenow3=LocalDateTime.now(clock);
System.out.println(now3);//會以相應的時區顯示日期
//不需要寫什麼相對時間如java.util.Date年是相對於1900月是從0開始
//2013-12-3123:59
LocalDateTimed1=LocalDateTime.of(2013,12,31,23,59);
//年月日時分秒納秒
LocalDateTimed2=LocalDateTime.of(2013,12,31,23,59,59,11);
//使用瞬時時間+時區
Instantinstant=Instant.now();
LocalDateTimed3=LocalDateTime.ofInstant(Instant.now(),ZoneId.systemDefault());
System.out.println(d3);
//解析String--->LocalDateTime
LocalDateTimed4=LocalDateTime.parse("2013-12-31T23:59");
System.out.println(d4);
LocalDateTimed5=LocalDateTime.parse("2013-12-31T23:59:59.999");//999毫秒等價於999000000納秒
System.out.println(d5);
//使用DateTimeFormatterAPI解析和格式化
DateTimeFormatterformatter=DateTimeFormatter.ofPattern("yyyy/MM/ddHH:mm:ss");
LocalDateTimed6=LocalDateTime.parse("2013/12/3123:59:59",formatter);
System.out.println(formatter.format(d6));
//時間獲取
System.out.println(d6.getYear());
System.out.println(d6.getMonth());
System.out.println(d6.getDayOfYear());
System.out.println(d6.getDayOfMonth());
System.out.println(d6.getDayOfWeek());
System.out.println(d6.getHour());
System.out.println(d6.getMinute());
System.out.println(d6.getSecond());
System.out.println(d6.getNano());
//時間增減
LocalDateTimed7=d6.minusDays(1);
LocalDateTimed8=d7.plus(1,IsoFields.QUARTER_YEARS);
//LocalDate即年月日無時分秒
//LocalTime即時分秒無年月日
//API和LocalDateTime類似就不演示了
}
(){
//即帶有時區的date-time存儲納秒、時區和時差(避免與本地date-time歧義)。
//API和LocalDateTime類似,只是多了時差(如2013-12-20T10:35:50.711+08:00[Asia/Shanghai])
ZonedDateTimenow=ZonedDateTime.now();
System.out.println(now);
ZonedDateTimenow2=ZonedDateTime.now(ZoneId.of("Europe/Paris"));
System.out.println(now2);
//其他的用法也是類似的就不介紹了
ZonedDateTimez1=ZonedDateTime.parse("2013-12-31T23:59:59Z[Europe/Paris]");
System.out.println(z1);
}
publicstaticvoidtestDuration(){
//表示兩個瞬時時間的時間段
Durationd1=Duration.between(Instant.ofEpochMilli(System.currentTimeMillis()-12323123),Instant.now());
//得到相應的時差
System.out.println(d1.toDays());
System.out.println(d1.toHours());
System.out.println(d1.toMinutes());
System.out.println(d1.toMillis());
System.out.println(d1.toNanos());
//1天時差類似的還有如ofHours()
Durationd2=Duration.ofDays(1);
System.out.println(d2.toDays());
}
(){
//提供對java.util.Calendar的替換,提供對年歷系統的支持
Chronologyc=HijrahChronology.INSTANCE;
ChronoLocalDateTimed=c.localDateTime(LocalDateTime.now());
System.out.println(d);
}
/**
*新舊日期轉換
*/
(){
Instantinstant=newDate().toInstant();
Datedate=Date.from(instant);
System.out.println(instant);
System.out.println(date);
}
publicstaticvoidmain(String[]args)throwsInterruptedException{
testClock();
testInstant();
testLocalDateTime();
testZonedDateTime();
testDuration();
testChronology();
testNewOldDateConversion();
}
}
Ⅹ Java 定義一個Date類
設計一個日期類MyDate,包含一個構造方法,3個私有成員變數year、month、day以及它們相應的setter和getter方法,再加上一個轉換成「XXXX年XX月XX日」格式字元串的方法toString。...
設計一個日期類MyDate,包含一個構造方法,3個私有成員變數year、month、day以及它們相應的setter和getter方法,再加上一個轉換成「XXXX年XX月XX日」格式字元串的方法toString。