Using Static Blocks in Java: Configuration Class Example
Static Block for Initialization
Write a Java program to create a class called Configuration with a static block that initializes a static variable 'configValue' from a configuration file (simulated with a default value). Print the value of 'configValue' in the main method.
Sample Solution:
Java Code:
Configuration.java
// Define the Configuration class
public class Configuration {
// Declare a static variable configValue
public static String configValue;
// Static block to initialize configValue
static {
// Simulating reading from a configuration file by assigning a default value
configValue = "Default Config Value";
System.out.println("Static block executed: configValue initialized");
}
// Main method to print the value of configValue
public static void main(String[] args) {
// Print the value of configValue
System.out.println("Config Value: " + configValue);
}
}
Output:
Static block executed: configValue initialized Config Value: Default Config Value
Explanation:
- Define the Configuration class:
- The Configuration class is defined using the class keyword.
- Declare a static variable configValue:
- The static variable configValue is declared. It will hold the configuration value.
- Static block to initialize configValue:
- A static block is used to initialize the static variable configValue.
- This block simulates reading from a configuration file by assigning a default value to configValue.
- A message is printed to indicate that the static block has been executed and configValue has been initialized.
- Main method to print the value of configValue:
- The main method is defined to test the Configuration class.
- It prints the value of configValue to the console.
Note on Java Static Members:
In the above exercise, the static members work by:
- Static Variable: The static variable configValue is associated with the class Configuration, not with any instance. It can be accessed and modified by static methods and blocks.
- Static Block: The static block is a special block of code that is executed when the class is first loaded into memory. It is used here to initialize the static variable configValue with a default value, simulating reading from a configuration file.
- Main Method: The main method prints the value of configValue, demonstrating that the static block has successfully initialized it.
Java Code Editor:
Improve this sample solution and post your code through Disqus.
Java Static Members Previous: Using Static Final Variables in Java: Constants Class Example.
Java Static Members Next: Using Static Methods and Variables in Java: IDGenerator Example.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics