Scala内部类的运用

内部类:定义在类里面的类(内部类可以访问私有成员用它来操作类的私有成员,封闭性更好)

Scala 复制代码
class Student{
  var age=18
  def say():Unit={

  }
  class Book{
    val bookName: Any = "Scala程序设计"
    }
  }

object Test19 {
  def main(args: Array[String]): Unit = {
    val s1=new Student()
    val book1=new s1.Book()

    println(book1.bookName)
  }

}



输出:Scala程序设计
Scala 复制代码
class Car2 {
  private var speed=100
  val color="red"
  //
  class Engin(var maxSpeed:Int){
    def acc():Unit={
      speed+=10
      if (speed>maxSpeed){
        speed=maxSpeed
      }
      println("speed",speed)
    }
    def sub():Unit={
      speed-=10
    }
  }

  override def toString: String = {

    s"当前的速度是${speed}"
  }
}
object Test19_1{
  def main(args: Array[String]): Unit = {
    val c=new Car2()
    var engin=new c.Engin(maxSpeed=120)
    engin.acc()
    engin.acc()
    engin.acc()
    println(c)
    engin.sub()
    println(c)

  }

}

输出:(speed,110)
(speed,120)
(speed,120)
当前的速度是120
当前的速度是110
相关推荐
uzong1 分钟前
从单体架构到微服务架构:模式与最佳实践
后端·架构
AI攻城狮3 分钟前
CLAUDE.md 的最佳实践:为什么你的配置文件基本上是废的
人工智能·后端·openai
鱼人12 分钟前
匹配表达式 vs. Switch语句:现代PHP中的条件逻辑重构
后端
clue13 分钟前
让微信小程序也能发PATCH
前端·后端
小短腿的代码世界16 分钟前
Qt跨进程通信在交易系统中的应用:让策略引擎与风控模块在毫秒级握手
开发语言·qt
zhangrelay28 分钟前
三分钟云课实践速通--大学物理--python 版
linux·开发语言·python·学习·ubuntu·lubuntu
掘金者阿豪44 分钟前
没有公网IP也能远程监控服务器?node_exporter加cpolar把监控接口透传到公网
后端
uzong1 小时前
软件架构设计的考虑:如构建一个长生周期的系统
后端·架构
MegaDataFlowers1 小时前
调用Service层操作数据
java·开发语言