scala的trait

//定义一个特质

//特质可以有抽象属性,具体属性,抽象方法,具体方法
trait Beauty{
  //抽象属性(没有=)
  val hair:String
  //具体属性
  var age =18
  val height =180 // val 不可以修改,var可以修改

  //抽象方法(没有=)
  def smile
  // 具体方法
  def say(): Unit={}
}
class Boy extends Beauty{
  //抽象属性,要具体实现
  val hair = "短发"

  //具体属性可以重写(可选)
     //  var 修饰的,可以直接赋值
     //  val 修饰的,可以用override重写
  override val height = 178
  age = 20


  //抽象方法,要具体实现
  def smile(): Unit={
    println(s"嘴角微微扬起")
  }

  //具体属性可以重写(可选)
  override def say():Unit={
    println(s"${age}岁,${height}大高个,${hair}")
  }
  
}
object Test50_1 {
  def main(args: Array[String]): Unit = {
    val b1 = new Boy()
//    println(b1.age,b1.height)
    b1.say()
  }
}
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.youkuaiyun.com/lhhongbi/article/details/143163424

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值