类的基本内容要点:
1、scala在定义字段时使用var ,默认生成对应setter和getter方法
2、调用了scala的setter方法 对应的名称money_=
3、调用了scala的gettter方法 对应的名称就为字段名称money
4、当使用val定义字段时,scala不在提供对应的setter方法
5、如果使用private修饰字段时 scala不在提供对应的setter和getter方法
6、@BeanProperty和private不能同时使用
在scala不在提供静态字段和静态方法的功能
用object去实现
当class的名称和对象的名称相同时,把该对象叫做同名类的伴生对象
Object是一种类型,与class非常相似。
Object可以提供java中的静态字段、静态方法的功能。
class atm{
var money = 0
}
object Test41 {
def main(args: Array[String]): Unit = {
/*
* scala在定义字段时使用var ,默认生成对应setter和getter方法
*/
var c = new atm()
//调用了scala的setter方法 对应的名称money_=
c.money_=(100)
//调用了scala的gettter方法 对应的名称就为字段名称money
println(c.money)
// c.setMoney(1000)
// println(c.getMoney())
/*当使用val定义字段时,scala不在提供对应的setter方法 */
/*如果使用private修饰字段时 scala不在提供对应的setter和getter方法*/
}
}
class myatm{
private var money = 0;
def setMoney(money:Int){
if(money > 0)
this.money = money
}
def getMoney = {
this.money
}
def add(a:myatm){
this.money += a.money
}
}
object Test42 {
def main(args: Array[String]): Unit = {
var c1 = new myatm
c1.setMoney(200);
var c2 = new myatm
c2.setMoney(100)
c2.add(c1)
println(c2.getMoney)
}
}