Scala 变量的范围
变量声明指定了存储在内存中的变量名称,并且可以通过这个变量名称进一步访问内存。Scala变量有三种类型的范围。
- 字段。
- 方法参数。
- 本地变量。
让我们来详细讨论一下它们中的每一个。
**字段 **
如果我们用正确的访问修饰语声明了这些变量,我们就可以从对象中的每个方法和对象外部访问这些变量。一个字段可以是可变的或不可变的,他们可以用 ‘var ‘或 ‘val ‘定义它们。
例子
输出
上面的例子显示了disp类的创建,其中有字段变量x和y。这些变量可以在一个方法中访问,并通过创建引用从一个对象中调用。因此,下面是获得的输出。
**方法参数 **
当我们想在方法中传递一个值时,我们会使用这些变量。它们可以在方法内部和方法外部被访问,如果在方法外部有一个对象的引用的话。这些变量总是可变的,使用 ‘val ‘关键字。
例子
输出
上面的例子显示,rect类创建了mult方法,接受两个方法参数变量s1和s2。区域对象被创建,rect方法通过传递变量s1和s2的值被调用,因此得到的输出如下。
**本地变量 **
这些类型的变量被声明在一个方法中,并且只能在该方法中访问。使用 ‘var ‘和 ‘val ‘关键字,这些变量可以是可变和不可变的。
例子
输出
上面的例子显示Area类在方法mult内有局部变量s1、s2和s,这些变量在方法之外不能访问。