1. 程式人生 > >java核心技術卷一(三)物件引用與建立,LocalDate的用法

java核心技術卷一(三)物件引用與建立,LocalDate的用法

Date now = new Date();

當我們使用上面這個語法之時,實際上是實現了兩個過程,第一個是使用new關鍵字建立了一個物件,另外一個過程是將這個建立的物件與變數now關聯到了一起。在java中任何變數的值都是對儲存在另一個地方的一個物件的引用,這一點很關鍵。

System.out.println(new Date());

當我們在使用上面一個語法之時,其實也建立了一個物件,這不過沒有給這個物件取名字,而直接使用了。通常,如果希望一個物件多次使用,我們還是需要給這個物件起一個名字的,也就是說需要把這個物件的引用存到一個變數之中。

Date someday = now;

使用這句話時,我們並沒有建立一個新的物件,而是相當於給之前建立的那個名字稱為now的物件起了一個別名。

當然,Date這個類中很多方法都不太使用了,在java8中推薦使用LocalDate這個類來處理日期。

我們使用 LocalDate now = LocalDate.now();來建立一個日期,該日期是不可變的,當使用方法操作該日期時,實際上是返回了一個新的 LocalDate。

    LocalDate常用方法
  • 1
  • 2
方法描述
now,of根據當前時間或指定年月日來建立LocalDate物件
plusDays,plusWeeks,plusMonths,plusYears向當前物件新增天、周、月、年
minusDays,minusWeeks,minusMonths,plusYears向當前物件減去天、周、月、年
plus,minus新增或減少一個Duration或者Perid
WithDayOfMonth,WithDayOfYear,withMonth,withYear將月份天數、年份天數、年份修改為指定的值,並返回一個新的LocalDate物件
getDayOfMonth獲得月份天數(1~31)
getDayOfYear獲得年份天數(1~366)
getDayOfWeek獲得星期幾
getMonth,getMonthValue獲得月份,或者Month列舉值,或者1-12數字
getYear獲得年份
isBefore,isAfter比較日期
isleapYear是否為閏年
                                    LocatTime常用方法
  • 1
  • 2
方法描述
now,of根據當前時間或指定年月日來建立LocalTime物件
plusHours,plusMinutes,plusSeconds,plusNanos向當前物件新增時、分秒、微秒
minusHours,minusMinutes,minusSeconds,minusNanos向當前物件減去時、分秒、微秒
plus,minus新增或減少一個Duration
WithHour,WithMinute,withSecond,withNano將時、分、秒、微秒修改為指定的值,並返回一個新的LocalTime物件
getHour,getMinute,getSecond,getNano獲取事件物件的時、分、秒、微秒
isBefore,isAfter比較時間