If you want to understand Java, understand the JVM. How much stupid soykaf a coder jokes about Java I find to be a metric for how cocky and new they are to this field. The role Java has in the marketplace is getting out gunned by the .NET ecosystem and though most Java jobs probably suck because most programmers suck, work in distributed systems in areas such as finance or data processing to be the coolest areas of note for the lang (see also Clojure).
* the JVM and Java are standardized EXTREMELY WELL, in my experience the best in fact; code (with GUI functions! and I/O!) I wrote in 2010 worked identically on a machine from 1999 and 2016, and because the JVM pops up on just about every PC made since the 90s, installation or setup is usually not required: I challenge you to find /any/ other platform or language where this is also the case
* JVM threads and tooling are great, open something like the JVMTI and inspect what an entire JVM instance is doing
* if you can master Java and go on to learn Clojure you'll have opportunities to work with some of best applications programmers and the cleanest codebases around: somewhere I read that Clojure developers are the happiest in their industry for this reason
>Is it a memory-efficient language?>>19062>Short answer is no
the short answer is that this poster seems to be internet educated rather than industry educated
Java is simply a language, the JVM simply a VM, high-speed financial trading platforms or other distributed systems regularly tune or modify their various version of the JVM for memory efficiency and speed /just like any other piece of software/
because of my domain of work I use assembly or some form of lisp but if someone gave me a month with no budget to deploy a distributed system that needed to run on as many computers as possible it would probably be a JVM application