Scala 面向对象基础(类和对象)

1.类

  • 类的定义
 class Counter{
//这里定义类的属性和方法
}

属性定义:
用val或者var关键字进行定义
方法定义:
用def关键字进行定义

class Counter {
var value =0
def increment(step:Int):Unit= {value +=step}
def current():Int= {value }
}     

使用new关键字来创建一个类的实例

val myCounter= new Countermy
Counter.value=5    //访问属性
myCounter.increment(3)  //调用方法
println(myCounter.current)   //调用无参数方法可省略括号

- 类成员的可见性
1.Scala类中所有成员的默认可见性为公有,任何作用域内都能直接访问公有成员
2.除了默认的公有可见性,Scala也提供private和protected,其中,private成员对本类和嵌套类可见;protected成员对本类和其继承类可见

- 方法的定义方式

基本语法:def 方法名 (参数列表):返回结果类型={方法体}

  • 方法参数前不能加上val或var,所有的方法参数都是不可变类型;•无参数的方法定义时可以省略括号,这时调用时也不能带有括号;如果定义时带有括号,则调用时可以带括号,也可以不带括号;
  • 如果方法只有一个参数,可省略点号(.)采用中缀操作符调用方法 •如果方法体只有一条语句,可以省略方法体两边的大括号

2.对象

  • 单例对象
    •Scala采用单例对象实现与Java静态成员同样的功能
    •使用object关键字定义单例对象
 object Person {
 private var lastId = 0//一个人的身份编号
 def new PersonId() ={
 lastId +=1
 lastId
 }}
  • 伴生对象和孤立对象
    • 当一个单例对象和它的同名类一起出现时,这时的单例对象被称为这个同名类的“伴生对象”。相应的类被称为这个单例对象的“伴生类”
    •特点:类和它的伴生对象必须存在于同一个文件中,可以相互访问私有成员
    •没有同名类的单例对象,被称为孤立对象。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值