scala---10.30

val、var

Scala 复制代码
package com_1030

class Person {
  var name:String="rose"

  def sum(n1:Int,n2:Int):Int={
    n1+n2
  }
}
object Person{
  def main(args: Array[String]): Unit = {
    //创建person对象
    var person=new Person()
    println(person.sum(10,20))//30

    println(person.name)
    person.name="www"
    println(person.name)
    //可以new,内存地址可以变
    person=new Person()

    //声明引用数据类型的常量
    val person2=new Person()
    println(person2.name)
    person2.name="rose456"
    println(person2.name)

    //不可以new,内存地址不能变
    //不可以为引用数据类型的常量重新分配内存
    //×××----------person2=new Person()

  }
}

辅助构造器、主构造器

Scala 复制代码
package com_1030

class Person1{
  var name:String=_
  var age:Int=_

  //定义辅助构造器
  def this(name:String){

    //辅助构造器必须调用主构造器
    this()
    //给name赋值
    this.name=name
    println("辅助构造器")
  }
def this(age:Int){
  //调用主构造器
  this()
  this.age=age
  println("辅助构造器")
}
  def this(name:String,age:Int){
    this()
    this.name=name
    this.age=age
    println("辅助构造器")
  }
  println("主构造器")

}
object Person1{
  def main(args: Array[String]): Unit = {
    //创建对象
    var p1=new Person1("rose")
    println(p1.name)
    var p2=new Person1(20)
    println(p2.age)
    var p3=new Person1("jack",28)
    println(p3.name+":::"+p3.age)
  }

}

继承

Scala 复制代码
package com_1030

class Person2 (nameParam:String){
  var name:String=nameParam
  var age:Int=_

//创建辅助构造器
  def this(name:String,age:Int){
    this(name)

    //给age赋值
    this.age=age
    println("父类的辅助构造器")
  }
println("父类的主构造器")
}
//创建子类继承Person
class Emp(nameParam:String,ageParam:Int) extends Person2(nameParam,ageParam){
var empNo:Int=_

  //创建子类的辅助构造器
  def this(name:String,age:Int,empNo:Int){
    //调用主构造
    this(name,age)
    this.empNo=empNo
    println("子类的辅助构造器")
  }
  println("子类的主构造器")
}

object Emp{
  def main(args: Array[String]): Unit = {
    var emp=new Emp("rose",25,1002121)
  }
}
相关推荐
典典分享指南1 天前
用结构化数据管理产品知识库
scala·bash·batch·actionscript
Thomas21434 天前
scala 闭包
开发语言·后端·scala
江畔柳前堤5 天前
前台·中台·后台:2026年AI原生时代的架构全景图
开发语言·人工智能·算法·机器学习·架构·scala·ai-native
Thomas214312 天前
Java scala 数组 链表
java·链表·scala
江畔柳前堤14 天前
消息队列:从直觉到精通的完整认知地图
开发语言·人工智能·算法·机器学习·ruby on rails·scala
hopsky1 个月前
《Scala 学习手册》核心内容详解
人工智能·学习·scala
abcy0712131 个月前
scala playframework 搭建与新建controller教程
scala
lpfasd1231 个月前
编程语言榜单变迁分析
开发语言·后端·scala
戮漠summer2 个月前
Missing Semester 计算机教育中缺失的一课 Lecture 01 Shell
开发语言·后端·scala
醉熏的石头2 个月前
Ubuntu 中的编程语言(中)
linux·ubuntu·scala