Some language features are just plain ugly. The first time you see them, you say to yourself, “If I ever have to use that, there’s something wrong with my design.” And most of the time you’d be right.
The SOLID open-closed principle in Java asserts that a well-designed software component will be open for ongoing extension, but closed to edits and modification. In other words, a Java class that ...