Scala之逆变

论坛 期权论坛 脚本     
匿名技术用户   2021-1-4 04:52   302   0


class Master
class Professional extends Master
class Card[-T](val name:String)  //支持逆变,父类来了当然可以
class  Worker
object Test {
  def enterMeet(card: Card[Professional]): Unit = {
    println("welcome to this party!" + card.name)
  }

  def main(args: Array[String]): Unit = {
    val card1 = new Card[Master]("master")
    enterMeet(card1)

    val card2 = new Card[Professional]("professional")
    enterMeet(card2)

    /*val card3 = new Card[Worker]("worker")
    enterMeet(card3)*/
  }
}

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP