scala属性的getter和setter方法

类的基本内容要点:
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)
    
  }
}



  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值