From 692f3b201a8a081664963b039a27ea41f3e5a318 Mon Sep 17 00:00:00 2001 From: michaelin007 Date: Sun, 3 Dec 2023 07:19:26 +0000 Subject: [PATCH 1/4] Final Static Variables in Java --- .../java/com/baeldung/finalstatic/Bike.java | 14 ++++++++++ .../baeldung/finalstatic/BikeUnitTest.java | 28 +++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 core-java-modules/core-java-lang-6/src/main/java/com/baeldung/finalstatic/Bike.java create mode 100644 core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java diff --git a/core-java-modules/core-java-lang-6/src/main/java/com/baeldung/finalstatic/Bike.java b/core-java-modules/core-java-lang-6/src/main/java/com/baeldung/finalstatic/Bike.java new file mode 100644 index 0000000000..6467ccc395 --- /dev/null +++ b/core-java-modules/core-java-lang-6/src/main/java/com/baeldung/finalstatic/Bike.java @@ -0,0 +1,14 @@ +package com.baeldung.finalstatic; + +import java.util.HashMap; + +public class Bike { + public static final int TIRE = 2; + public static final int PEDAL; + public static final HashMap PART = new HashMap<>(); + + static { + PEDAL = 5; + } + +} diff --git a/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java b/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java new file mode 100644 index 0000000000..bd7f578a9a --- /dev/null +++ b/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java @@ -0,0 +1,28 @@ +package com.baeldung.finalstatic; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class BikeUnitTest { + + @Test + void givenTireConstantSetUponDeclaration_whenGetTire_thenReturnTwo() { + assertEquals(2, Bike.TIRE); + } + + @Test + void givenPedalConstantSetByStaticBlock_whenGetPedal_thenReturnFive() { + assertEquals(5, Bike.PEDAL); + } + + @Test + void givenPartConstantObject_whenObjectStateChanged_thenCorrect() { + Bike.PART.put("seat", 1); + assertEquals(1, Bike.PART.get("seat")); + + Bike.PART.put("seat", 5); + assertEquals(5, Bike.PART.get("seat")); + } + +} \ No newline at end of file From f763b57b7a00c3f5653e6076173c28156345dd7c Mon Sep 17 00:00:00 2001 From: michaelin007 Date: Sun, 3 Dec 2023 11:09:55 +0000 Subject: [PATCH 2/4] Final Static Variables in Java --- .../src/test/java/com/baeldung/finalstatic/BikeUnitTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java b/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java index bd7f578a9a..3699a061ab 100644 --- a/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java +++ b/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java @@ -2,7 +2,7 @@ package com.baeldung.finalstatic; import org.junit.jupiter.api.Test; -import static org.junit.jupiter.api.Assertions.*; +import static org.junit.jupiter.api.Assertions.assertEquals; class BikeUnitTest { From e6c2c4ab6427cbce20aec559ad37e367fabefc95 Mon Sep 17 00:00:00 2001 From: michaelin007 Date: Mon, 4 Dec 2023 09:15:45 +0000 Subject: [PATCH 3/4] https://jira.baeldung.com/browse/BAEL-7169 --- .../src/test/java/com/baeldung/finalstatic/BikeUnitTest.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java b/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java index 3699a061ab..7b32b0906c 100644 --- a/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java +++ b/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java @@ -25,4 +25,9 @@ class BikeUnitTest { assertEquals(5, Bike.PART.get("seat")); } + @Test + void givenMathClass_whenAccessingPiConstant_thenVerifyPiValueIsCorrect() { + assertEquals(3.141592653589793, Math.PI); + } + } \ No newline at end of file From c3fe804379cb634d6e32c4e445690ba21b61a6de Mon Sep 17 00:00:00 2001 From: michaelin007 Date: Sat, 9 Dec 2023 00:22:41 +0000 Subject: [PATCH 4/4] https://jira.baeldung.com/browse/BAEL-7169 --- .../java/com/baeldung/{finalstatic => staticfinal}/Bike.java | 2 +- .../com/baeldung/{finalstatic => staticfinal}/BikeUnitTest.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename core-java-modules/core-java-lang-6/src/main/java/com/baeldung/{finalstatic => staticfinal}/Bike.java (87%) rename core-java-modules/core-java-lang-6/src/test/java/com/baeldung/{finalstatic => staticfinal}/BikeUnitTest.java (95%) diff --git a/core-java-modules/core-java-lang-6/src/main/java/com/baeldung/finalstatic/Bike.java b/core-java-modules/core-java-lang-6/src/main/java/com/baeldung/staticfinal/Bike.java similarity index 87% rename from core-java-modules/core-java-lang-6/src/main/java/com/baeldung/finalstatic/Bike.java rename to core-java-modules/core-java-lang-6/src/main/java/com/baeldung/staticfinal/Bike.java index 6467ccc395..bde7b44897 100644 --- a/core-java-modules/core-java-lang-6/src/main/java/com/baeldung/finalstatic/Bike.java +++ b/core-java-modules/core-java-lang-6/src/main/java/com/baeldung/staticfinal/Bike.java @@ -1,4 +1,4 @@ -package com.baeldung.finalstatic; +package com.baeldung.staticfinal; import java.util.HashMap; diff --git a/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java b/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/staticfinal/BikeUnitTest.java similarity index 95% rename from core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java rename to core-java-modules/core-java-lang-6/src/test/java/com/baeldung/staticfinal/BikeUnitTest.java index 7b32b0906c..2201dae4d1 100644 --- a/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/finalstatic/BikeUnitTest.java +++ b/core-java-modules/core-java-lang-6/src/test/java/com/baeldung/staticfinal/BikeUnitTest.java @@ -1,4 +1,4 @@ -package com.baeldung.finalstatic; +package com.baeldung.staticfinal; import org.junit.jupiter.api.Test;