Java進階:物件與類
阿新 • • 發佈:2018-11-12
1.類庫中的LocalDate類
(1)Date類與LocalDate類
Date類:例項有一個狀態即特定的時間點。時間是由一個固定時間點的毫秒數
LocalDate類:用於表示大家熟悉的日曆表示法
(2)使用靜態工廠方法代表你呼叫構造器:
LocalDate.now(); LocalDate.of(year,month,day); LocalDate.plusDays();//會得到一個新的LocalDate,新日期物件是距當前物件指定天數的一個新日期
(3)LocalDate類設計到一些方法:
static LocalDate now()
static LocalDate of(int year,int month,int day)
LocalDate plusDays(int n)
int getYear()
int getMonthValue()
int getDayOfMonth()
DayOfWeek getDayOfWeek()
2.更改器方法與訪問器方法
更改器方法:呼叫這個方法後,物件狀態會發生改變。
訪問器方法:只訪問物件不修改物件的方法。
LocalDate aThousandDaysLater=newYearsEve.plusDays(1000); //plusDays方法會生成一個新的物件,然後把它賦給aThousandDaysLater變數。原來的物件不作任何改動 GregorianCalender someDay=new GregorianCalender(1999,11,31); someDay.add(Calender.DAY_OF_MONTH,1000); //add方法是個更改器方法,呼叫這個方法後,someDay的狀態會發生改變
3.工廠方法
靜態方法的另一種用途:某些類用靜態工廠方法來構造物件。
NumberFormat currencyFormatter=NumberFormat.getCurrencyInstance();
NumberFormat percentFormatter=NumberFormat.getPercentInstance();
double x=0.1;
System.out.println(currencyFormatter.format(x));
System.out.println(percentFormatter.format(x));
為什麼NumberFormat類不利用構造器完成這些操作?
(1)無法命名構造器
(2)當使用構造器時,無法改變所構造物件型別