diff --git a/core-java-modules/core-java-lang-oop-2/README.md b/core-java-modules/core-java-lang-oop-2/README.md
index d482b0a78d..8417c89c7a 100644
--- a/core-java-modules/core-java-lang-oop-2/README.md
+++ b/core-java-modules/core-java-lang-oop-2/README.md
@@ -3,9 +3,7 @@
This module contains articles about Object-oriented programming (OOP) in Java
### Relevant Articles:
-- [Generic Constructors in Java](https://www.baeldung.com/java-generic-constructors)
- [Anonymous Classes in Java](https://www.baeldung.com/java-anonymous-classes)
-- [Raw Types in Java](https://www.baeldung.com/raw-types-java)
- [Marker Interfaces in Java](https://www.baeldung.com/java-marker-interfaces)
- [Java equals() and hashCode() Contracts](https://www.baeldung.com/java-equals-hashcode-contracts)
- [Static and Default Methods in Interfaces in Java](https://www.baeldung.com/java-static-default-methods)
diff --git a/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/README.md b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/README.md
new file mode 100644
index 0000000000..f0213c5659
--- /dev/null
+++ b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/README.md
@@ -0,0 +1,8 @@
+## Core Java Lang OOP - Generics
+
+This module contains articles about generics in Java
+
+### Relevant Articles:
+- [Generic Constructors in Java](https://www.baeldung.com/java-generic-constructors)
+- [Type Erasure in Java Explained](https://www.baeldung.com/java-type-erasure)
+- [Raw Types in Java](https://www.baeldung.com/raw-types-java)
diff --git a/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/pom.xml b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/pom.xml
new file mode 100644
index 0000000000..167aa695e0
--- /dev/null
+++ b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/pom.xml
@@ -0,0 +1,16 @@
+
+
+
+ core-java-lang-oop-modules
+ com.baeldung.core-java-lang-oop-modules
+ 1.0.0-SNAPSHOT
+
+ 4.0.0
+
+ core-java-lang-oop-generics
+ core-java-lang-oop-generics
+ jar
+
+
\ No newline at end of file
diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/generics/Entry.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/generics/Entry.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/generics/Entry.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/generics/Entry.java
diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/generics/GenericEntry.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/generics/GenericEntry.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/generics/GenericEntry.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/generics/GenericEntry.java
diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/generics/MapEntry.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/generics/MapEntry.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/generics/MapEntry.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/generics/MapEntry.java
diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/generics/Product.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/generics/Product.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/generics/Product.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/generics/Product.java
diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/generics/Rankable.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/generics/Rankable.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/generics/Rankable.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/generics/Rankable.java
diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/rawtype/RawTypeDemo.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/rawtype/RawTypeDemo.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/rawtype/RawTypeDemo.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/rawtype/RawTypeDemo.java
diff --git a/core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/typeerasure/ArrayContentPrintUtil.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/typeerasure/ArrayContentPrintUtil.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/typeerasure/ArrayContentPrintUtil.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/typeerasure/ArrayContentPrintUtil.java
diff --git a/core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/typeerasure/BoundStack.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/typeerasure/BoundStack.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/typeerasure/BoundStack.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/typeerasure/BoundStack.java
diff --git a/core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/typeerasure/IntegerStack.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/typeerasure/IntegerStack.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/typeerasure/IntegerStack.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/typeerasure/IntegerStack.java
diff --git a/core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/typeerasure/Stack.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/typeerasure/Stack.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/typeerasure/Stack.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/main/java/com/baeldung/typeerasure/Stack.java
diff --git a/core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/generics/GenericConstructorUnitTest.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/test/java/com/baeldung/generics/GenericConstructorUnitTest.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/generics/GenericConstructorUnitTest.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/test/java/com/baeldung/generics/GenericConstructorUnitTest.java
diff --git a/core-java-modules/core-java-lang-oop/src/test/java/com/baeldung/typeerasure/TypeErasureUnitTest.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/test/java/com/baeldung/typeerasure/TypeErasureUnitTest.java
similarity index 100%
rename from core-java-modules/core-java-lang-oop/src/test/java/com/baeldung/typeerasure/TypeErasureUnitTest.java
rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-generics/src/test/java/com/baeldung/typeerasure/TypeErasureUnitTest.java
diff --git a/core-java-modules/core-java-lang-oop-modules/pom.xml b/core-java-modules/core-java-lang-oop-modules/pom.xml
index ad86c1ef3c..c32e276a89 100644
--- a/core-java-modules/core-java-lang-oop-modules/pom.xml
+++ b/core-java-modules/core-java-lang-oop-modules/pom.xml
@@ -17,5 +17,6 @@
core-java-lang-oop-constructors
core-java-lang-oop-patterns
+ core-java-lang-oop-generics
\ No newline at end of file