关闭

Scala AOP编程

标签: scalaaop
474人阅读 评论(0) 收藏 举报
分类:
trait Action{
  def doAction
}

trait TBeforeAfter extends Action{
  //doAction虽然实现了,但依旧是抽象方法。
  //方法内部我们调用了super.doAction,因此仍然是抽象的
  abstract override def doAction: Unit ={
    println("Init")
    super.doAction
    println("Destroyed")
  }
}

class Work extends Action{
  override def doAction: Unit = println("Working...")
}


object Demo {
  def main(args: Array[String]) {
    println("-----AOP----")
    val w = new Work with TBeforeAfter
    w.doAction

  }

}

运行结果:

-----AOP----
Init
Working...
Destroyed
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:342281次
    • 积分:6510
    • 等级:
    • 排名:第3656名
    • 原创:268篇
    • 转载:7篇
    • 译文:0篇
    • 评论:53条
    About Me

    姓名:李国冬
    英文名:wintfru
    GitHub: 点击进入
    Email:liguodongiot@gmail.com
    学校:西南石油大学
    学历:本科
    专注:Java、Hadoop、IOT
    爱好:跑步,NBA,旅游,LOL
    博客专栏
    咚呱哂呱
    好记性不如烂笔头。
    文章分类