黑猴子的家:Scala 简单类和无参方法

1、Dog类

类的定义可以通过class关键字实现,如下

class Dog {
  //private var leg = 4
  var leg = 4
  def shout(content:String): Unit ={
    println(content)
  }
}

2、主类 extends App

运行方式一
使用这个类

object Loop_Tmain extends App {
    val dog = new Dog
    println(dog.leg)
    dog.leg_=(10)
    println(dog.leg)
}

3、主类

运行方式二

object Loop_Tmain  {
  def main(args: Array[String]): Unit = {
    val dog = new Dog
    println(dog.leg)
    dog.leg_=(10)
    println(dog.leg)
  }
}

尖叫提示:在Scala中,类并不声明为Public,一个Scala源文件可以包含多个类。所有这些类都具有公有可见性。调用无参方法时,可以加(),也可以不加;如果方法定义中不带括号,那么调用时就不能带括号。

Eiffel语言发明者,提出统一访问原则,内容如下,某个模块提供的所有服务,都应该能通过统一的表达法访问到,至于它们是通过存储还是通过计算来实现的,从访问方式上应无从获得。

在Scala中,dog.leg 的调用者并不知道leg是通过字段还是通过方法来实现的,当然,在jvm中,该服务总是通过方法来实现的,要么是编译器合成,要么由程序员提供

4、Loop_One

创建名为Loop_One 的Scala 类文件

// Class 名 和 文件名,可以不一致
class zom {

}

class cat {

}

//主程序
object Omain extends App{
    println("haha")
}

尖叫提示:在Scala中,类名和文件名可以不一致
Scala 对每个字段生成getter和 setter方法,这听上去有一些恐怖,不过我们可以控制这个过程
(1)如果字段是私有的,则getter和setter方法也是私有的
(2)如果字段是val,则只有getter 方法被生成
(3)如果你不需要任何getter或者setter,我们可以将字段声明为private[this]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值