Sync Singleton to Java 25: split 6 implementations into separate files, consolidated Main.java demo
This commit is contained in:
19
01-creational/singleton/AppConfigEnum.java
Normal file
19
01-creational/singleton/AppConfigEnum.java
Normal file
@@ -0,0 +1,19 @@
|
||||
package singleton;
|
||||
|
||||
public enum AppConfigEnum {
|
||||
|
||||
INSTANCE; // The JVM creates this exactly once, period.
|
||||
|
||||
// Enum instances can have fields and methods like any class
|
||||
private final String configPath;
|
||||
|
||||
AppConfigEnum() {
|
||||
// Enum constructors run once, when the constant is first used
|
||||
this.configPath = System.getProperty("config.path", "application.properties");
|
||||
System.out.println("Loading config from: " + configPath);
|
||||
}
|
||||
|
||||
public String getProperty(String key) {
|
||||
return System.getProperty(key, "(not set)");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user