HomeLanguagesJavaAre static local variables allowed in Java?

Are static local variables allowed in Java?

Unlike C/C++, static local variables are not allowed in Java. For example, following Java program fails in compilation with error “Static local variables are not allowed”  

java




class Test {
   public static void main(String args[]) {
     System.out.println(fun());
   }
 
   static int fun()
   {
     static int x= 10//Error: Static local variables are not allowed
     return x--;
   }
}


Time Complexity: O(1)

Auxiliary Space: O(1)

In Java, a static variable is a class variable (for whole class). So if we have static local variable (a variable with scope limited to function), it violates the purpose of static. Hence compiler does not allow static local variable. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

RELATED ARTICLES

3 COMMENTS

Most Popular

Dominic
32533 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6913 POSTS0 COMMENTS
Nicole Veronica
12028 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12132 POSTS0 COMMENTS
Shaida Kate Naidoo
7043 POSTS0 COMMENTS
Ted Musemwa
7280 POSTS0 COMMENTS
Thapelo Manthata
6999 POSTS0 COMMENTS
Umr Jansen
6986 POSTS0 COMMENTS