In java, blank final variable is a variable which is declared with final keyword but not initialised at declaration time. Blank final variables are initialised at the object creation time by constructor and they can’t change after that.
Example
class BlankFinalTest{ //blank final variable final String website; BlankFinalTest(String website){ this.website = website; System.out.println("website = " + website); } } public class Main { public static void main(String args[]){ //creating object of BlankFinalTest Class BlankFinalTest obj = new BlankFinalTest("w3schools.com"); } } |
Output
website = w3schools.com |
We will get compile time error, if we try to change the value of blank final variable.
Example
class BlankFinalTest{ //blank final variable final String website; BlankFinalTest(String website){ this.website = website; System.out.println("website = " + website); this.website = "java.com"; } } public class Main { public static void main(String args[]){ //creating object of BlankFinalTest Class BlankFinalTest obj = new BlankFinalTest("w3schools.com"); } } |
Output
Main.java:8: error: variable website might already have been assigned this.website = "java.com"; ^ 1 error |
Java interview questions on final keyword
- what is final in java?
- What is final variable in java?
- What is final method in java?
- What is final class in java?
- What is blank final variable in java?
- What is static blank final variable in java?
- What is final parameter in java?
- Can we initialize blank final variable in java?
- Can we declare the main method as final?
- What is the use of final keyword in java?
- Can we change the state of an object to which a final reference variable is pointing?
- Difference between abstract method and final method in java?
- Can we change the value of an interface field?
- Can we declare constructor as final in java?