public class MyDate{; v3 ~$ ~' W. M) N
* K" F1 m1 [% @2 ^
private int year;
2 [" L. w0 S5 I Q3 `
1 y/ n/ l- f5 t! m- c( U private int month;
8 \) I. ~% l V" Q : n9 x m* J @4 J
private int day;
$ }& ?( A4 `: b0 _4 Z6 k* x) g # s; U9 v( \+ |3 T$ v
public MyDate(int year, int month, int day){
+ e3 g7 w1 o$ f0 {: H " r, n9 i- ?0 |3 o, T
this.year = year;
( z/ o0 B; l' H5 e9 { 9 H6 k7 q! @! s" J* x
this.month = month;
% E( i# s/ \0 E9 x
/ A" B k9 }" Z: n$ o this.day = day;
6 d: W. ^4 r5 J8 U; U % A [( a$ g$ P
}" b7 v% s6 b3 @' N* c
0 p3 |0 T3 n: Y" P8 B public MyDate nextDay(){) l8 z2 R: B6 [9 v& W2 U/ O
! N8 z! ?0 b* ? int newDay = day + 1;
3 o# l! {- B3 N( _' X - h% ?: X: |* \! I: d2 o2 C: l
int newMonth = month;
9 G% l$ \. R/ K& s! ? ) c* @# V5 s# y% f6 f5 @
int newYear = year;! e2 U1 c6 Y5 `5 B4 x a
1 i1 W" q- `2 L3 _6 V ] if(newDay > 30){
3 Q4 J; y: K+ t, z# [! f5 A1 j
" c" r) m9 S7 G; Z: B+ z3 ~ newMonth ++;
, c% o; q5 G5 o' d. ~+ d5 x+ H 6 ^! N3 q7 h' n
newDay = 1;4 O7 h8 [& L1 {$ N' {$ R
- r, H8 ^' @. d) J$ W$ C) m+ c! T2 L
}
# s5 ^; T1 Q I7 R) L2 Q
2 j8 `% v, p. M3 g7 a if(newMonth > 12){, g7 H# J. [. n w
, p6 y# I+ |% z# j newYear ++;- Y+ b* v7 a7 c1 {+ V8 Q$ L- I5 V5 h5 U7 r
2 e, y& T- G5 |: C$ Y& H
newMonth = 1;3 Q, z; K Y! \4 f! ~; @5 ^ i
; h+ ?5 q2 _' M( v5 D3 o
}( F% |/ L8 U1 ]/ ~- q, r
' ?: u U# g' t1 u- H8 o MyDate newDate =/ p7 e6 V7 e% n" t* r
$ O) d& x i6 c new MyDate(newYear, newMonth, newDay);
, a9 s2 j' k1 z0 x) n0 c
{5 o0 V/ y6 l6 _0 A return newDate;
6 Y2 H* z/ O$ s) y5 g+ E
I: u6 {( ^) N( k }$ e+ L9 z$ |8 E; }
' D4 h+ a( z% ~* G public int getYear(){- d M! C+ j) |; v( j) u4 e
- r+ R& R1 `$ g7 x; h return year;
- E# `1 p2 L+ |) K. L % g4 b% Q6 t! K, L% G
}
& Y6 ]/ E# H" z' E
9 L- o; q0 j% \. Q* A: l public int getMonth(){
+ \, |2 t2 T& b/ \% m8 _ ) ]' d+ n2 q8 x9 O: N, r6 e# n
return month;
# j3 o, n$ v* z3 P# V/ x 1 O+ V) Q2 \: M) `& R9 a
}
$ ?. {6 Z' {) d6 | % w# b; ~& k$ @! P' u& X
public int getDay(){
6 t. b/ V- x7 c! Z! \% Z" C5 O ) ]5 R) B' k& E
return day;
0 L1 D# F( Z: i6 W$ D3 F4 e0 U# n , ~ m2 a5 U# K& ?5 C: l" e
}5 \* y6 y: a, L0 t; j
/ N2 [/ t. a% d6 V
}
7 L. }# r9 d. e: ~
2 p) F; g8 W) i5 r% o* Y! I/ x package ch04;$ g4 u! O: `. _/ b
. x- `3 ~ d7 i- ^ public class DateTest{8 c& R, Q; D( K u' K5 }
$ E: u: {5 W5 K" E1 l: d- i/ } public static void main(String[] args){
5 C' N1 Q8 [1 G; m* O Y4 e( W" { $ B* z6 j p& h+ |" X. C6 L
MyDate oldDate = new MyDate(2005, 12, 30);6 M5 t W% t( i
5 L7 x6 S6 p0 d# K" |
MyDate newDate = oldDate.nextDay();& [+ ^; Z6 W; M4 t* ?6 T" N' T
" s% d3 W3 A! n8 y, T
System.out.println(newDate.getYear());
`! P& Z0 h! `
3 ^- r' k: k5 H) p: N( c+ b; j# B/ I System.out.println(newDate.getMonth());
. u7 m' u5 v* H
6 t* b% N. _, S8 Z* \( M& _ B System.out.println(newDate.getDay());
) H( p( C$ P9 q; |7 F 0 u, O7 j% \- w* H( K
}
! E7 R5 n$ m3 U/ `' P4 ]" M w
2 j4 B( f/ L3 A9 N, r+ F* O4 ? } |