Do you need a quick overview of all Java versions? Please check out the friendly and helpful Java Versions Cheat Sheet! It is developed and actively maintained by me.
The NIO.2 (“New Input/Output 2”) is a new API introduced in JDK 7 to operate more efficiently and uniformly on file systems. This new API covers many file and directory-specific aspects, such as handling attributes and symbolic links. This article discusses one of the most straightforward aspects of NIO.2, listing directory entries using the new DirectoryStream…
In this relatively short article, I will discuss an intriguing and noteworthy topic about collections in Java: why some standard Java collections cannot be heterogeneous. In other words, why they cannot contain objects of different types.
Inheritance and correlated polymorphism are among the most important concepts in OOP languages like Java, Kotlin, C#, and others. In this article, I will explain two typical cases of wrong inheritance usage that anyone should not imitate.
Logback is a known Java logging library and an alternative to the better-known log4j library. I already wrote about an “advanced” feature of logback in a previous article. In this article, I will provide a practical introduction so you can start quickly and easily with logback.
Spring Boot directly supports three well-known JSON binding libraries: Jackson, Gson, and JSON-B (note that the latter is, more precisely, a specification). JSON binding is typically used in REST web services, but you can use it in several other contexts. In this article, I will explain how to integrate these libraries in Spring Boot (mainly…
Java 10, released on March 2018, has introduced the new “var” syntax. This small but helpful feature allows you to declare local variables using the word “var” instead of specifying the variable type. This article is focused on describing all the essential rules about this new feature clearly and concisely.