question: public Week ( Date time , TimeZone zone , Locale locale ) { ParamChecks . nullNotPermitted ( time , "time" ) ; ParamChecks . nullNotPermitted ( zone , "zone" ) ; ParamChecks . nullNotPermitted ( locale , "locale" ) ; Calendar calendar = Calendar . getInstance ( zone , locale ) ; calendar . setTime ( time ) ; int tempWeek = calendar . get ( Calendar . WEEK_OF_YEAR ) ; if ( tempWeek == 1 && calendar . get ( Calendar . MONTH ) == Calendar . DECEMBER ) { this . week = 1 ; this . year = ( short ) ( calendar . get ( Calendar . YEAR ) + 1 ) ; } else { this . week = ( byte ) Math . min ( tempWeek , LAST_WEEK_IN_YEAR ) ; int yyyy = calendar . get ( Calendar . YEAR ) ; if ( calendar . get ( Calendar . MONTH ) == Calendar . JANUARY && this . week >= 52 ) { yyyy -- ; } this . year = ( short ) yyyy ; } peg ( calendar ) ; }
target:  Creates a time period for the week in which the specified date/time falls, calculated relative to the specified time zone.