newしていないのにインスタンスメソッドは使えるのでしょうか?
インスタンスメソッド/staticメソッドを勉強中です。
下記のコードではLocalDate.parseでインスタンスを生成して、
そのインスタンスを変数ldateが参照しています。
そして、変数ldateにplusDays(1000)したデータを変数ldatepが受け取っています。
このとき、ldatepとldateはデータの数値は違うものの、同じインスタンスを参照しているのでしょうか?
また、同じインスタンス参照しているがゆえに、ldatep.format()のように、
新しくnewしなくてもldatep変数にインスタンスメソッドを使うことができているのでしょうか?
該当のソースコード
java
1import java.time.*; 2import java.time.format.*; 3 4public class Main { 5 public static void main(String[] args) { 6 //文字列からLocalDateを生成 7 DateTimeFormatter fmt = 8 DateTimeFormatter.ofPattern("yyyy/MM/dd"); 9 LocalDate ldate = 10 LocalDate.parse("2020/09/22", fmt); 11 12 //1000日後を計算する 13 LocalDate ldatep = ldate.plusDays(1000); 14 String str = ldatep.format(fmt); 15 System.out.println("1000日後は" + str); 16 17 //現在日時との比較 18 LocalDate now = LocalDate.now(); 19 if(now.isBefore(ldatep)) { 20 System.out.println("1000日後は未来日付です"); 21 } 22 } 23}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/02/23 20:20