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 fc5b5944f8..d482b0a78d 100644 --- a/core-java-modules/core-java-lang-oop-2/README.md +++ b/core-java-modules/core-java-lang-oop-2/README.md @@ -8,8 +8,6 @@ This module contains articles about Object-oriented programming (OOP) in Java - [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) -- [Immutable Objects in Java](https://www.baeldung.com/java-immutable-object) -- [Inheritance and Composition (Is-a vs Has-a relationship) in Java](https://www.baeldung.com/java-inheritance-composition) - [Static and Default Methods in Interfaces in Java](https://www.baeldung.com/java-static-default-methods) - [Abstract Classes in Java](https://www.baeldung.com/java-abstract-class) - [[<-- Prev]](/core-java-modules/core-java-lang-oop)[[More -->]](/core-java-modules/core-java-lang-oop-3) diff --git a/core-java-modules/core-java-lang-oop-3/README.md b/core-java-modules/core-java-lang-oop-3/README.md index 3a0e588ad4..78725b0f02 100644 --- a/core-java-modules/core-java-lang-oop-3/README.md +++ b/core-java-modules/core-java-lang-oop-3/README.md @@ -8,7 +8,6 @@ This module contains articles about Object-oriented programming (OOP) in Java - [Guide to the super Java Keyword](https://www.baeldung.com/java-super) - [Guide to the this Java Keyword](https://www.baeldung.com/java-this) - [Java ‘public’ Access Modifier](https://www.baeldung.com/java-public-keyword) -- [Composition, Aggregation, and Association in Java](https://www.baeldung.com/java-composition-aggregation-association) - [Nested Classes in Java](https://www.baeldung.com/java-nested-classes) - [A Guide to Inner Interfaces in Java](https://www.baeldung.com/java-inner-interfaces) - [Java Classes and Objects](https://www.baeldung.com/java-classes-objects) diff --git a/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/README.md b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/README.md new file mode 100644 index 0000000000..178a556a96 --- /dev/null +++ b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/README.md @@ -0,0 +1,9 @@ +## Core Java Lang OOP - Patterns + +This module contains articles about Object-oriented programming (OOP) patterns in Java + +### Relevant Articles: +- [Composition, Aggregation, and Association in Java](https://www.baeldung.com/java-composition-aggregation-association) +- [Inheritance and Composition (Is-a vs Has-a relationship) in Java](https://www.baeldung.com/java-inheritance-composition) +- [Immutable Objects in Java](https://www.baeldung.com/java-immutable-object) +- [How to Make a Deep Copy of an Object in Java](https://www.baeldung.com/java-deep-copy) diff --git a/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/pom.xml b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/pom.xml new file mode 100644 index 0000000000..5bd3c70542 --- /dev/null +++ b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/pom.xml @@ -0,0 +1,45 @@ + + + + core-java-lang-oop-modules + com.baeldung.core-java-lang-oop-modules + 1.0.0-SNAPSHOT + + 4.0.0 + + core-java-lang-oop-patterns + core-java-lang-oop-patterns + jar + + + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + + + com.google.code.gson + gson + ${gson.version} + + + + org.assertj + assertj-core + ${assertj-core.version} + test + + + + + 2.8.2 + 3.10.0 + + \ No newline at end of file diff --git a/core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/deepcopy/Address.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/deepcopy/Address.java similarity index 100% rename from core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/deepcopy/Address.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/deepcopy/Address.java diff --git a/core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/deepcopy/User.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/deepcopy/User.java similarity index 100% rename from core-java-modules/core-java-lang-oop/src/main/java/com/baeldung/deepcopy/User.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/deepcopy/User.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/immutableobjects/Currency.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/immutableobjects/Currency.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/immutableobjects/Currency.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/immutableobjects/Currency.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/immutableobjects/Money.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/immutableobjects/Money.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/immutableobjects/Money.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/immutableobjects/Money.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/application/Application.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/application/Application.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/application/Application.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/application/Application.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Actress.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Actress.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Actress.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Actress.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Computer.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Computer.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Computer.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Computer.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Memory.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Memory.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Memory.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Memory.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Person.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Person.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Person.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Person.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Processor.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Processor.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Processor.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Processor.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/SoundCard.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/SoundCard.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/SoundCard.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/SoundCard.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/StandardMemory.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/StandardMemory.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/StandardMemory.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/StandardMemory.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/StandardProcessor.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/StandardProcessor.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/StandardProcessor.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/StandardProcessor.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/StandardSoundCard.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/StandardSoundCard.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/StandardSoundCard.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/StandardSoundCard.java diff --git a/core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Waitress.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Waitress.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/main/java/com/baeldung/inheritancecomposition/model/Waitress.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/inheritancecomposition/model/Waitress.java diff --git a/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/aggregation/Car.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/aggregation/Car.java similarity index 100% rename from core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/aggregation/Car.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/aggregation/Car.java diff --git a/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/aggregation/CarWithStaticInnerWheel.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/aggregation/CarWithStaticInnerWheel.java similarity index 100% rename from core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/aggregation/CarWithStaticInnerWheel.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/aggregation/CarWithStaticInnerWheel.java diff --git a/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/aggregation/Wheel.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/aggregation/Wheel.java similarity index 100% rename from core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/aggregation/Wheel.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/aggregation/Wheel.java diff --git a/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/association/Child.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/association/Child.java similarity index 100% rename from core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/association/Child.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/association/Child.java diff --git a/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/association/Mother.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/association/Mother.java similarity index 100% rename from core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/association/Mother.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/association/Mother.java diff --git a/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/composition/Building.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/composition/Building.java similarity index 100% rename from core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/composition/Building.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/composition/Building.java diff --git a/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/composition/BuildingWithDefinitionRoomInMethod.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/composition/BuildingWithDefinitionRoomInMethod.java similarity index 100% rename from core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/composition/BuildingWithDefinitionRoomInMethod.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/composition/BuildingWithDefinitionRoomInMethod.java diff --git a/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/university/Department.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/university/Department.java similarity index 100% rename from core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/university/Department.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/university/Department.java diff --git a/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/university/Professor.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/university/Professor.java similarity index 100% rename from core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/university/Professor.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/university/Professor.java diff --git a/core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/university/University.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/university/University.java similarity index 100% rename from core-java-modules/core-java-lang-oop-3/src/main/java/com/baeldung/relationships/university/University.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/main/java/com/baeldung/relationships/university/University.java diff --git a/core-java-modules/core-java-lang-oop/src/test/java/com/baeldung/deepcopy/DeepCopyUnitTest.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/deepcopy/DeepCopyUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang-oop/src/test/java/com/baeldung/deepcopy/DeepCopyUnitTest.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/deepcopy/DeepCopyUnitTest.java diff --git a/core-java-modules/core-java-lang-oop/src/test/java/com/baeldung/deepcopy/ShallowCopyUnitTest.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/deepcopy/ShallowCopyUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang-oop/src/test/java/com/baeldung/deepcopy/ShallowCopyUnitTest.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/deepcopy/ShallowCopyUnitTest.java diff --git a/core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/immutableobjects/ImmutableObjectsUnitTest.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/immutableobjects/ImmutableObjectsUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/immutableobjects/ImmutableObjectsUnitTest.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/immutableobjects/ImmutableObjectsUnitTest.java diff --git a/core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/inheritancecomposition/ActressUnitTest.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/inheritancecomposition/ActressUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/inheritancecomposition/ActressUnitTest.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/inheritancecomposition/ActressUnitTest.java diff --git a/core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/inheritancecomposition/CompositionUnitTest.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/inheritancecomposition/CompositionUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/inheritancecomposition/CompositionUnitTest.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/inheritancecomposition/CompositionUnitTest.java diff --git a/core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/inheritancecomposition/InheritanceUnitTest.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/inheritancecomposition/InheritanceUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/inheritancecomposition/InheritanceUnitTest.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/inheritancecomposition/InheritanceUnitTest.java diff --git a/core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/inheritancecomposition/PersonUnitTest.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/inheritancecomposition/PersonUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/inheritancecomposition/PersonUnitTest.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/inheritancecomposition/PersonUnitTest.java diff --git a/core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/inheritancecomposition/WaitressUnitTest.java b/core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/inheritancecomposition/WaitressUnitTest.java similarity index 100% rename from core-java-modules/core-java-lang-oop-2/src/test/java/com/baeldung/inheritancecomposition/WaitressUnitTest.java rename to core-java-modules/core-java-lang-oop-modules/core-java-lang-oop-patterns/src/test/java/com/baeldung/inheritancecomposition/WaitressUnitTest.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 c8bad11b13..ad86c1ef3c 100644 --- a/core-java-modules/core-java-lang-oop-modules/pom.xml +++ b/core-java-modules/core-java-lang-oop-modules/pom.xml @@ -16,5 +16,6 @@ core-java-lang-oop-constructors + core-java-lang-oop-patterns \ No newline at end of file