What Programming Language is best for Mechanical Engineers?
I believe Java is a very useful tool for mechanical engineering applications because code can be written quickly & recycled in other applications.
There are a few limitations on using java. When you distribute an application, you need to include code for the java virtual machine so your application will not be small (about 10Mb). Your application will also not be fast.
On the plus side, your application will be written in reusable blocks of code called classes (object classes) which are extendable. You can use classes written by other people too quite easily.
A big advantage over C++ you don't need to write destructors. Destructors are code that frees up memory used for data storage when you don't need it any more. Java automatically does this for you using something called automatic garbage collection. This means less code to write & fewer sources of bugs.
Java is very widely used for network server applications where the software produced might only run on one computer. The reduced cost of writing the code more than offsets the processor time cost of running a slower program.
If you were to write a program where you expected to sell hundreds of thousands of copies you would probably use C++ cause of the speed.