Because Date has, by definition, no concept of time. The only reason why you see it is because someone decided to save a bit of time and reuse implementation.
If you want to move TZ, you need something that _has_ time. Such as DateAndTime. You can also read the comments ... Date > Instances of Date are Timespans with duration of 1 day. it represents an entire day, not a particular time point DateAndTime > I represent a point in time or timestamp as defined by ISO 8601. > I am TimeZone aware. I really don't understand why are you trying to force TZ into Date against it's purpose when you have a class that does exactly what you want and was built for that purpose. Peter On Fri, Nov 17, 2017 at 12:09 PM, Prof. Andrew P. Black <bl...@cs.pdx.edu> wrote: > > On 17 Nov 2017, at 08:49 , Peter Uhnák <i.uh...@gmail.com> wrote: > > I find the concept of translating TZ of a Date silly. The real bug imho > should be that it prints both time and TZ.... this is Date, not DateAndTime. > > > I live in Oregon, and frequently work with people in New Zealand, which is > (depending on the time of year) 19 to 21 hours ahead of Oregon. So, when > it is 3pm at home, it is noon *the next day* in New Zealand. > > This means that in order to know the day of the week, the month, and even > the year, of a given instant in UTC, one has to know the timezone that is > being referred to. The answer could be Sunday, 31 December 2017 for one > observer, and Monday, 1 January 2018 for another. > > So, contrary to your statement, I don’t see how I can know the date > without also knowing the Time Zone. > > Andrew >