Scala AOP编程
2016-06-02 11:21
344 查看
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
相关文章推荐
- SPSS Modeler与Google地图的完美结合
- C++100w个数中找出最大的前K个数
- 实时推送道路上少走弯路---GoEasy推送
- netCDF4-python的安装
- Java并发-任务执行和取消关闭
- 10个实用的但偏执的Java编程技术
- Java去除依赖
- 浅谈Java后台对JSON格式的处理操作
- Java基本数据类型总结
- 真正解决ASP.NET每一个页面首次访问超级慢的问题 (转载)
- Java后台处理Json格式数据的方法
- php实现子字符串位置相互对调互换的方法[原创]_php技巧_脚本之家
- android eclipse基础开发环境搭建--最新安卓6.0 SDK
- Java中线程的创建有两种方式
- Java NIO系列教程(十) Java NIO DatagramChannel
- spring 中的<aop:advisor>和<aop:aspect>有什么区别?
- DELPHI 利用WINRRA 实现压缩解压
- java按行读取文件,可做模板(简单易懂),大家一起学习
- Java NIO系列教程(九) ServerSocketChannel
- 收藏一个Yaf教程