Open Closed Principle in Java | SOLID Principles

The Open Closed principle (OCP) is one of the most important object oriented design principle. In this article, I am going to cover what is open closed principle. How to implement this design principle in our code or module.

The open closed principle is one of the five design principles of object-oriented design. These set of five principles are known as SOLID principles.

In my previous post, i have already explained single responsibility principle. In subsequent tutorials, I’ll cover rest of the principles.

Single Responsibility Principle (SRP)| SOLID Principles

In this tutorial, I am going to discuss the Single Responsibility Principle of SOLID design principles.

I am going to discuss what is Single Responsibility Principle? How does this principle help us to write clean and maintainable code?

SOLID principles are made popular by Robert C. Martin. You can read his amazing book clean architecture.

Single Responsibility Principle

This principle states that a class should have only one reason to change.

Multiple reasons for change indicate a class has many responsibilities. A class that has many responsibilities is harder to maintain and also it increases the possibility of bugs.

To understand this principle, let’s take an example.

Different Ways to Capture Java Heap Dumps

In this tutorial, I am going to discuss what is java heap dump and what are the different ways to capture a java heap dumps.

What is a Heap Dump?

A heap dump is the snapshot of all the objects in the JVM at a certain moment. In simple words, It is the snapshot of the java memory.

The heap dump is useful in debugging java memory-leak issue and out-of-memory error in java applications. Heap dump is capture/store in binary format (hprof) files.

Once heap dump is taken it can be analyzed through heap analyzer tools such as Eclipse memory analyzer tool (MAT), JVisualVM, HeapHero etc. In this tutorial, i am only going to discuss how to generate java heap dumps.