scala学习(十五)——trait运行时装配
来源:互联网 发布:淘宝金牌卖家有假货吗 编辑:程序博客网 时间:2024/05/01 00:48
scala学习(十五)——trait运行时装配
能够在运行是装配类使用那个trait,有点类似类在执行期间根据不同的接口执行不同的操作。
下面是一个例子:
//带有特质的对象,能够在运行的时候自动的进行装配trait Logger{ def log(msg:String){ }}class Dog extends Logger{ def run = { log("xxx") }}trait newLogger extends Logger{ override def log(msg:String){ println("newLogger " + msg) }}trait ddLogger extends Logger{ override def log(msg:String){ println("ddLogger " + msg) }}object main{ def main(args:Array[String]){ var d = new Dog d.run //下面对Logger进行替换,能够选择需要使用的接口 var d2 = new Dog with newLogger d2.run var d3 = new Dog with ddLogger d3.run println("==========") //在后面的会被执行 var d4 = new Dog with newLogger with ddLogger d4.run var d5 = new Dog with ddLogger with newLogger d5.run }}
0 0
- scala学习(十五)——trait运行时装配
- scala学习(十五)——trait
- scala——trait
- scala语法(三)——trait
- Scala学习—面向对象编程之Trait
- scala学习-trait学习
- scala学习笔记3(trait)
- scala学习trait
- Scala学习--Trait
- Scala基础—Trait使用示例
- Scala Trait(一)
- Scala Trait(二)
- Scala Trait(三)
- Scala Trait(四)
- Scala学习笔记5--Trait
- scala学习记录之trait
- scala学习之特质(trait)
- Scala Trait 详解(实例)
- 解析XML文件
- Windows下搭建React Native环境与Android Studio集成
- Xcode各种iOS版本模拟器的安装使用
- 获取当前iframe的id
- BeautifulSoup解析页面造成信息丢失的解决办法
- scala学习(十五)——trait运行时装配
- java基本数据类型长度详解
- Json学习笔记
- 理解CGI、FastCGI、PHP-CGI、PHP-FPM
- __ATTRIBUTE__ 你知多少?
- 禁用ckeditor的编辑功能
- synchronized同步问题 Integer
- 编译Lua语言到 imx283平台并动态加载so库
- Java Web后台入门实战(二)-YuaneQi Sharing