学习scala笔记--12 为实例 混入 trait

 

 

 

为实例 混入 trait

 

创建对象时  使用 with  混入

 

 

scala> trait Logger {

     | def log(log:String){}

     | }

defined trait Logger

 

 

 

scala> trait HelloLogger extends Logger {

     |  override def log(log:String){ println("---hello---"+log)}

     | }

defined trait HelloLogger

 

scala> 

 

scala> trait HiLogger extends Logger {

     | override def log(log:String){println("---hi---"+log)}

     | }

defined trait HiLogger

 

scala> 

 

scala> class  Person extends Logger{

     | def sayHello(name:String){ log(name)}

     | }

defined class Person

 

scala> 

 

scala> val p1 = new Person

p1: Person = Person@74106c6c

 

scala> p1.sayHello("hello")

 

scala> val p2 = new Person with HelloLogger

p2: Person with HelloLogger = $anon$1@15d1c3ac

 

scala> p2.sayHello("hello")

---hello---hello

 

scala> val p3 = new Person with HiLogger

p3: Person with HiLogger = $anon$1@6a6974b9

 

scala> p3.sayHello("hello")

---hi---hello

 

 

----------------------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值