In addition to deciding whether the variable should be final or not, which is considered in other posts, I think the problem with final Date now = ...is that although the reference to the present does not change (it is final), its value may be. Therefore, I believe that this is a little misleading for developers who do not know that Date has changed. For example, you can write:
public static void main(String[] args) {
final Date now = new Date();
System.out.println(now);
now.setHours(5);
System.out.println(now);
}
and get two different dates from your final date ...
( final List<String> l ), , .
joda:
final DateTime now = new DateTime();
now ( ).