You know those silly legal documents where every little detail must be explicitly spelt out and every term precisely defined.
That's what I find Java like. Far too rigid and ceremonial.
It's a bit like the difference between HTML and XHTML...
HTML code:
<!doctype html><html lang="en">
<TITLE>Hello!</TITLE>
<p>Wooohoo!!!
<p>I <3 lemons.
XML code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello!</title>
</head>
<body>
<p>Wooohoo!!!</p>
<p>I <3 lemons.</p>
</body>
</html>
Those result in the same thing.
If you think the second one over the top, you'll find Java a nightmare.
:P