diff --git a/builder/src/main/java/com/iluwatar/builder/Hero.java b/builder/src/main/java/com/iluwatar/builder/Hero.java
index f92e61761..c2318e37d 100644
--- a/builder/src/main/java/com/iluwatar/builder/Hero.java
+++ b/builder/src/main/java/com/iluwatar/builder/Hero.java
@@ -27,7 +27,7 @@ package com.iluwatar.builder;
* Hero, the class with many parameters.
*
*/
-public class Hero {
+public final class Hero {
private final Profession profession;
private final String name;
diff --git a/caching/src/main/java/com/iluwatar/caching/AppManager.java b/caching/src/main/java/com/iluwatar/caching/AppManager.java
index e79ae479f..2967c759f 100644
--- a/caching/src/main/java/com/iluwatar/caching/AppManager.java
+++ b/caching/src/main/java/com/iluwatar/caching/AppManager.java
@@ -33,7 +33,7 @@ import java.text.ParseException;
* CacheStore class.
*
*/
-public class AppManager {
+public final class AppManager {
private static CachingPolicy cachingPolicy;
diff --git a/caching/src/main/java/com/iluwatar/caching/DbManager.java b/caching/src/main/java/com/iluwatar/caching/DbManager.java
index 841ad6614..9aee682a3 100644
--- a/caching/src/main/java/com/iluwatar/caching/DbManager.java
+++ b/caching/src/main/java/com/iluwatar/caching/DbManager.java
@@ -43,7 +43,7 @@ import com.mongodb.client.model.UpdateOptions;
* during runtime (createVirtualDB()).
*
*/
-public class DbManager {
+public final class DbManager {
private static MongoClient mongoClient;
private static MongoDatabase db;
diff --git a/flux/src/main/java/com/iluwatar/flux/dispatcher/Dispatcher.java b/flux/src/main/java/com/iluwatar/flux/dispatcher/Dispatcher.java
index ae7edca57..4ab01b9fc 100644
--- a/flux/src/main/java/com/iluwatar/flux/dispatcher/Dispatcher.java
+++ b/flux/src/main/java/com/iluwatar/flux/dispatcher/Dispatcher.java
@@ -37,7 +37,7 @@ import com.iluwatar.flux.store.Store;
* Dispatcher sends Actions to registered Stores.
*
*/
-public class Dispatcher {
+public final class Dispatcher {
private static Dispatcher instance = new Dispatcher();
diff --git a/multiton/src/main/java/com/iluwatar/multiton/Nazgul.java b/multiton/src/main/java/com/iluwatar/multiton/Nazgul.java
index 369e17dbc..5a1dbede6 100644
--- a/multiton/src/main/java/com/iluwatar/multiton/Nazgul.java
+++ b/multiton/src/main/java/com/iluwatar/multiton/Nazgul.java
@@ -30,7 +30,7 @@ import java.util.concurrent.ConcurrentHashMap;
* Nazgul is a Multiton class. Nazgul instances can be queried using {@link #getInstance} method.
*
*/
-public class Nazgul {
+public final class Nazgul {
private static Map nazguls;
diff --git a/naked-objects/integtests/src/test/java/domainapp/integtests/bootstrap/SimpleAppSystemInitializer.java b/naked-objects/integtests/src/test/java/domainapp/integtests/bootstrap/SimpleAppSystemInitializer.java
index 90ae45d95..b7c76d0ed 100644
--- a/naked-objects/integtests/src/test/java/domainapp/integtests/bootstrap/SimpleAppSystemInitializer.java
+++ b/naked-objects/integtests/src/test/java/domainapp/integtests/bootstrap/SimpleAppSystemInitializer.java
@@ -19,7 +19,7 @@ import org.apache.isis.core.integtestsupport.IsisSystemForTest;
import org.apache.isis.objectstore.jdo.datanucleus.DataNucleusPersistenceMechanismInstaller;
import org.apache.isis.objectstore.jdo.datanucleus.IsisConfigurationForJdoIntegTests;
-public class SimpleAppSystemInitializer {
+public final class SimpleAppSystemInitializer {
private SimpleAppSystemInitializer() {
}
diff --git a/null-object/src/main/java/com/iluwatar/nullobject/NullNode.java b/null-object/src/main/java/com/iluwatar/nullobject/NullNode.java
index 485b1bd5d..3a177f69f 100644
--- a/null-object/src/main/java/com/iluwatar/nullobject/NullNode.java
+++ b/null-object/src/main/java/com/iluwatar/nullobject/NullNode.java
@@ -29,7 +29,7 @@ package com.iluwatar.nullobject;
* Implemented as Singleton, since all the NullNodes are the same.
*
*/
-public class NullNode implements Node {
+public final class NullNode implements Node {
private static NullNode instance = new NullNode();
diff --git a/service-layer/src/main/java/com/iluwatar/servicelayer/hibernate/HibernateUtil.java b/service-layer/src/main/java/com/iluwatar/servicelayer/hibernate/HibernateUtil.java
index e3588b35a..b30b97b65 100644
--- a/service-layer/src/main/java/com/iluwatar/servicelayer/hibernate/HibernateUtil.java
+++ b/service-layer/src/main/java/com/iluwatar/servicelayer/hibernate/HibernateUtil.java
@@ -32,7 +32,7 @@ import org.hibernate.cfg.Configuration;
/**
* Produces the Hibernate {@link SessionFactory}.
*/
-public class HibernateUtil {
+public final class HibernateUtil {
/**
* The cached session factory
diff --git a/service-locator/src/main/java/com/iluwatar/servicelocator/ServiceLocator.java b/service-locator/src/main/java/com/iluwatar/servicelocator/ServiceLocator.java
index 9f0b478ca..4d356a567 100644
--- a/service-locator/src/main/java/com/iluwatar/servicelocator/ServiceLocator.java
+++ b/service-locator/src/main/java/com/iluwatar/servicelocator/ServiceLocator.java
@@ -28,7 +28,7 @@ package com.iluwatar.servicelocator;
*
* @author saifasif
*/
-public class ServiceLocator {
+public final class ServiceLocator {
private static ServiceCache serviceCache = new ServiceCache();
diff --git a/singleton/src/main/java/com/iluwatar/singleton/InitializingOnDemandHolderIdiom.java b/singleton/src/main/java/com/iluwatar/singleton/InitializingOnDemandHolderIdiom.java
index 1a0168ccc..84444ec2e 100644
--- a/singleton/src/main/java/com/iluwatar/singleton/InitializingOnDemandHolderIdiom.java
+++ b/singleton/src/main/java/com/iluwatar/singleton/InitializingOnDemandHolderIdiom.java
@@ -34,7 +34,7 @@ import java.io.Serializable;
*
* @author mortezaadi@gmail.com
*/
-public class InitializingOnDemandHolderIdiom implements Serializable {
+public final class InitializingOnDemandHolderIdiom implements Serializable {
private static final long serialVersionUID = 1L;
diff --git a/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLocking.java b/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLocking.java
index d7f723553..50203609c 100644
--- a/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLocking.java
+++ b/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeDoubleCheckLocking.java
@@ -31,7 +31,7 @@ package com.iluwatar.singleton;
*
* @author mortezaadi@gmail.com
*/
-public class ThreadSafeDoubleCheckLocking {
+public final class ThreadSafeDoubleCheckLocking {
private static volatile ThreadSafeDoubleCheckLocking instance;
diff --git a/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeLazyLoadedIvoryTower.java b/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeLazyLoadedIvoryTower.java
index ac4c39f2c..d7e0de5b5 100644
--- a/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeLazyLoadedIvoryTower.java
+++ b/singleton/src/main/java/com/iluwatar/singleton/ThreadSafeLazyLoadedIvoryTower.java
@@ -29,7 +29,7 @@ package com.iluwatar.singleton;
* Note: if created by reflection then a singleton will not be created but multiple options in the
* same classloader
*/
-public class ThreadSafeLazyLoadedIvoryTower {
+public final class ThreadSafeLazyLoadedIvoryTower {
private static ThreadSafeLazyLoadedIvoryTower instance = null;
diff --git a/step-builder/src/main/java/com/iluwatar/stepbuilder/CharacterStepBuilder.java b/step-builder/src/main/java/com/iluwatar/stepbuilder/CharacterStepBuilder.java
index ce402cfe2..35e671b4c 100644
--- a/step-builder/src/main/java/com/iluwatar/stepbuilder/CharacterStepBuilder.java
+++ b/step-builder/src/main/java/com/iluwatar/stepbuilder/CharacterStepBuilder.java
@@ -28,7 +28,7 @@ import java.util.List;
/**
* The Step Builder class.
*/
-public class CharacterStepBuilder {
+public final class CharacterStepBuilder {
private CharacterStepBuilder() {}
diff --git a/tolerant-reader/src/main/java/com/iluwatar/tolerantreader/RainbowFishSerializer.java b/tolerant-reader/src/main/java/com/iluwatar/tolerantreader/RainbowFishSerializer.java
index 42f659476..948dfa6d2 100644
--- a/tolerant-reader/src/main/java/com/iluwatar/tolerantreader/RainbowFishSerializer.java
+++ b/tolerant-reader/src/main/java/com/iluwatar/tolerantreader/RainbowFishSerializer.java
@@ -38,7 +38,7 @@ import java.util.Map;
* added to the schema.
*
*/
-public class RainbowFishSerializer {
+public final class RainbowFishSerializer {
private RainbowFishSerializer() {
}