Scala中的对象
Scala类中的属性默认是private修饰的!但是我们可以直接给其赋值,这时为什么呢
当我们声明了 var name :String 方法时,在底层对应private name
同时会生成 两个public 方法 name() 类似于 getter() 和 public name$_eq()类似于setter

- Java是面向对象的编程语言,由于历史原因,Java中还存在着非面向对象的内容:基本类型,nul1,静态方法等。
- Scala语言来自于Java,所以天生就是面向对象的语言,而且Scala是纯粹的面向对象的语言,即在Scala中,一切皆为对象。
- 在面向对象的学习过程中可以对比着Java语言学习
属性,成员变量
注意事项
- 属性的定义语法同变量,示例:[访问修饰符] var属性名称[:类型]=属性值]
- 属性的定义类型可以为任意类型,包含值类型或引用类型
- Scala中声明一个属性,必须显示的初始化,然后根据初始化数据的类型自动推
断,属性类型可以省略(这点和Java不同 - 如果赋值为null,则一定要加类型,因为不加类型,那么该属性的类型就是Null
类型
方法的调用机制
- 当我们scala开始执行时,先在栈区开辟一个main栈。main栈是最后被销毁
- 当scala程序在执行到一个方法时,总会开一个新的栈。
- 每个栈是独立的空间,变量(基本数据类型)是独立的,相互不影响(引用类型除外)
- 当方法执行完毕后,该方法开辟的栈就会被jvm机回收。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Ryder!
评论






