If I use System.currentTimeMillis() at 00:00 and I get X value.
System.currentTimeMillis()
X
Then I set the clock back one hour, and after one hour i call System.
System.
It will return X because System.currentTimeMillis() returns the number of milliseconds since the epoch. That means it will be insynch with your clock and count the number of seconds since January 1, 1970 UTC