scala

28 阅读1分钟

package level02
//内部类
//val 外部类的对象  =  new 外部类()
//val 内部
//

object class17{
  class Class1() {
    class Class2() {
      def test():Unit = {
        println("text....")
      }
    }
  }



  def main(args: Array[String]): Unit = {
    val c1 = new Class1()
    val c2 = new c1.Class2()
    c2.test()

  }
}

package level02


object class18{
  class Car() {
    private var speed: Int = 0


    def getSpeed(): Unit = {
      println(s"当前速度是${speed}")
    }

    class Engin() {
      def accSpeed(s: Int = 10): Unit = {
        speed += s
      }

      def subSpeed(s: Int = 10): Unit = {
        speed -= s
      }
    }

  }


  def main(args: Array[String]): Unit = {
    val car  = new Car()
    val engin = new car.Engin()
    engin.subSpeed(10)
    engin.accSpeed(20)
    car.getSpeed()

  }
}

package level02

//内部对象 在class 的内部 定义object对象
//new class 的实例
//实例.对象

object class19{
  class Class1 () {
    object  obj {
      var age :Int = 10
      def say():Unit = {
        println(s"hello,${age}")
      }

    }

  }




  def main(args: Array[String]): Unit = {
    val c1  = new Class1()
    c1.obj.say()


  }
}