When invoking the value of a static variable, initialize it at the static block or call the value method if it is to be initialized.
Static block initialization:
public class Staticdemo {
private static String str; static variables defined
static{
str = "static block naming";
}
public static String Getstr () {
return str;
}
}
In the Main method call
public class Test {
public static void Main (string[] args) {
System.out.println (Staticdemo.getstr ());
}
}
Result output: static block naming
Initialized within the called static method
public class Staticdemo {
private static String str; static variables defined
public static String Getstr () {
str = "static method temporary naming";
return str;
}
}
Result output after Main method call: Static method temporary naming
But initialization in the constructor method
public class Staticdemo {
private static String str;
Public Staticdemo () {
str = "static block naming";
}
public static String Getstr () {
return str;
}
}
Result output after Main method call: null
When a static method is called to take the value of a static variable, the constructor method fails to initialize the value of the static variable.
Initialization of static modified variables