In my blog I write about misconceptions. Encapsulation is something you learn when you study Java and OOP. But it seems that most books fail to truly explain the problems you want to solve with it and those you get by using it. Often it’s just a short chapter or even just a small part about the important concepts of OOP. This is leading to misconceptions and poor understanding of OOP.
(Note: I wrote this before the release of Java 10. Expect that some things are somewhat outdated.)
Continue reading “Encapsulation”
The if statement is often translated as “if”, but “if and only if” is what it really means.
To be able to use a language you need to actually understand it. This may seem obvious, but books on Java usually don’t have much on understanding the language. When you learn French you will want to be able to translate from and to French.
Continue reading “Understanding Java”
This can’t be answered in just a blog entry but I try to give a quick overview.
Continue reading “How to do a Project”
At some point you will learn about concurrent programming. The Java Memory Model is the essential concept you need to learn. But it’s no easy to grasp as a beginner. I try to explain some of the most important aspects.
Continue reading “Java Memory Model”
You may wonder if double checked locking (DCL) works in Java. It does and it doesn’t. I explain why. Continue reading “Double Checked Locking in Java”
So Java has references. But what about pointers and pass-by-reference? References in Java are different to PHP, C# and other languages. And this can cause some confusion. Continue reading “What are References in Java?”
In Java it’s important to know what references are and how they are used. So it’s important to know what operations can be performed on references.
Continue reading “What Operations can be performed on a Reference in Java?”
Java (both the language and the JVM) are not aware of constants. To reduce confusion it’s better to not use the term “constant” in Java code, unless it’s actually a universal constant. Continue reading “Java knows no Constants”
A language can’t be slow. Or how fast do you think English is?
And modern JVMs are highly optimized. Continue reading “Java is not slow”