I often wonder why Java uses ::
for method references instead of .
, e.g. why write
System.out::println
instead of
System.out.println
Of course, one might simply answer: "because the designers decided so". On the other hand, I would have expected the second syntax because the dot is the usual Java syntax for accessing class members.
So is there any known special reason for introducing the new ::
syntax instead of using the existing .
convention for method references?