Answer Posted / Gopal Prasad Poddar
In Scala, variables follow lexical (static) scoping rules. Variables can be defined inside blocks, functions, classes, objects, and packages. The scope of a variable extends to all parts of the program that are nested within the block where the variable is declared, including nested functions and classes. If a variable with the same name is redefined within a nested block or function, it hides the outer variable. For example, let's consider the following code snippet:nn```scalanval x = 10 // Global variablendef foo(): Unit = {n val x = 20 // Local variable in function foo()n println(x) // Prints 20n}nfoo()nprintln(x) // Prints 10n```
| Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers