Java Myths and Facts

Shoaib Shaikh
4 min readMay 16, 2021

--

JAVA is a high-level programming language, released in 1995, and is used by most developers worldwide. It is an object-oriented programming language and it derives its syntax from other popular programming languages such as C and C++. JAVA is supported worldwide. The demand for java professionals is quite high. Let us have a look at some myths and facts related to JAVA. Java has made remarkable progress by working on JDK, in terms of the language and the JVM. Yet, some myths about JAVA remain which we will debunk.

1: Java is dead

Java programming language has evolved at a remarkable pace during the period 1995–2006, considering a new major version after every 2 years. In 2004, Generics was introduced in Java 5. JDK 6 was released in the year 2006 with some minor modifications. The developers’ community was then struggling to agree on the evolutions for the future of Java. In 2009, Oracle acquired Sun but that did not help much. The future of Java had become doubtful and people started thinking that Java will be dead under Oracle. Finally, Java 7 was released in 2011 but the features were less than expected. As the community was facing difficulties regarding finding the solution to features that were satisfactory to all, the Jigsaw modularization project was postponed too. Lambdas and Streams made the way for functional programming in Java. In September 2017, the Jigsaw project and modularization of JDK were integrated into Java version 9. Oracle, set a goal to make Java more dynamic and refrain from developers considering Java as dead staring with Java 10 which was released in March 2018. They decided to release a new major version of JDK after every 6 months. Oracle is keeping its promise and we can say that Java is not dead.

2: Java is Slow

The myth that Java is slow is actually based on the first versions of Java which were comparatively slower than compiled languages like C/C++. To keep its promise of “Write Once, Run Anywhere”, JVM, which is a virtual machine of Java platform added a layer of software. Due to this performance would suffer. Adding to the extra software layer, some implementations of JVM were really slow. However, due to the progress in hardware, the addition of an extra software layer has no such impact on performance. Also, the JVM Just-In-Compiler has improved the performance of Java applications to the extent that Java serves as an execution platform for other languages such as Kotlin, Scala, and Groovy. It is no longer only a language but is an ecosystem now.

3: Java is a paid service

Oracle made a confusing announcement in 2018 that JDK would be charged for professional use from now onwards. This confusion made people argue about Java being a paid service. The truth is that Oracle distributes two builds of JDK which are Oracle JDK and Oracle OpenJDK. Oracle JDK is free for development and testing but one needs to pay for its production purpose use. One can choose from JDK builds which are proposed by the AdoptOpenJDK community. Also, Amazon has made its own JDK with the name Amazon Corretto which is completely free.

4: Java does not leak memory

Unlike in C/C++, memory management is done by a Garbage Collector in Java. The idea behind this is that the developer himself does not have to deal with memory in order to limit memory leaks. Considering this one may assume that memory leaks are not possible in Java. But the truth is if a developer does not release the references to objects and variables which are no longer useful, he/she is preventing the Garbage Collector from functioning properly. The result will be slow applications and poor memory management. Also, if the input/output resources are not released memory leaks may happen. Using native codes via a JNI can also cause memory leaks. So, a developer should not design Java programs without considering memory management-related issues which he/she takes care of while using C/C++.

5: Only learning Java is enough

Java is the most used language in the software industry. The success of Android in mobiles makes Java the prime choice for mobile applications. The EE framework of Java allows one to create web applications. Java FX and Swing are chosen at the client-side. In short, Java allows us to do almost anything. Considering this one might think that it is sufficient to only learn. However, this would be a mistake. It is because even if Java allows us to do everything, it does not mean it is best for everything. So, a developer should be open to new technologies and choose his/her programming language keeping in mind the type of application and domain.

Conclusion

Java is the most used language worldwide and is a tough competitor for all languages. As a result, some myths prevail in the community about Java. We tried and debunked some of the popular myths. So, Java is here to stay, but we should be choosing technology for our project with a realistic and practical approach.

Saurav Sanap — 3–11911308

Ruturaj Sawant — 7–11911287

Shazeb Sayyed — 8–11910129

Shoaib Shaikh — 11–11911135

--

--