Periods class implementation in java 8 -


if code this:

period wrong = period.ofyears(1).ofweeks(1); 

it gives output of p7d.

by implementation of period class know of____() methods static.

but if same chaining datetime class:

localdate date = localdate.of(2020, month.january, 20); localtime time = localtime.of(5, 15); localdatetime datetime = localdatetime.of(date, time)   .minusdays(1).minushours(10).minusseconds(30); 

all minus___() , plus___() methods instance methods in localdatetime class.

question: why method chaining not allowed period class?

why period class isn't supporting that?

how internal assignment going on ?

you not chaining calls in first example.

period wrong = period.ofyears(1).ofweeks(1); 

is same as:

period wrong = period.ofweeks(1); 

in other words: object returned ofyears() not affect result of ofweeks() , it's year value discarded. invoking static method ofweeks(). doing there not fluent call chain.

and decent ide should warn doing so. reason simple: "chaining" doesn't make sense!

the ofxyz() calls create new period object you. object done , created. should semenatics of chaining ofxyz() call onto existing period?

in other words: can't chain ofxyz() calls because there no clear way express semantics such chain should have!


Comments

Popular posts from this blog

Add new key value to json node in java -

php - Vagrant up error - Uncaught Reflection Exception: Class DOMDocument does not exist -

javascript - Highcharts Synchronized charts with missing data points -