What are the rules for initializing variables?
In Java, every variable in a program must have a value before its value is used.
- Member variables (both static and instance) are initialized implicitly by default:
- Most primitives except boolean are default initialized to zero (e.g., the value for integer type is 0, 0.0f is for float type, and 0.0d is for double type)
- char variables are default initialized to '\u0000'
- boolean variables are default initialized to false.
- The reference type variables are default initialized to null.
- Final variables must be initialized explicitly in declaration or constructors (instance final variable.)
- Local variables are not assigned a default value. A local variable must be explicitly given a value before it is used, by either initialization or assignment, in a way that can be verified by the compiler using the rules for definite assignment.
Most Recent java Faqs
- How to avoid an java.util.ConcurrentModificationException with ArrayList?
- How to convert a given array to a list in Java?
- How to make Java objects eligible for garbage collection?
- What are local variables in Java?
- What are instance variables in Java?
- How many backslashes?
- What are class variables in Java?
Most Viewed java Faqs
- How to use HttpURLConnection POST data to web server?(24745)
- What is runtime polymorphism in Java?(18324)
- How to add BASIC Authentication into HttpURLConnection?(16081)
- What is String literal pool?(14754)
- Can the run() method be called directly to start a thread?(13989)
- What does Class.forname method do?(10593)
- Can transient variables be declared as 'final' or 'static'?(10445)