I believe that they are identical. In any case, they perform the same function. It seems that they are implemented separately, instead of calling each other. I'm not sure why.
The only difference that I see is that it toDateTimeneeds to be implemented, because it is defined in AbstractInstant, and DateTimeextends AbstractInstant.