Dt大数据梦工厂王家林老师 Scala实战详解之第14讲 Scala中作为接口的trait、在对象中混入trait代码实战
来源:互联网 发布:facebook网络连接错误 编辑:程序博客网 时间:2024/05/19 13:22
package com.dt.scalaInAction.demo_014class UserTrait { }/** * trait和Java中的有所不同 interface中只能定义abstarct public方法 而trait中可以定义具体实现方法 */trait Logger{ def log(msg: String) //在trait中定义抽象方法 def logImpl(msg: String){} //在trait中定义具体方法}/** * 类可以继承多个trait 语法为:extend trait with trait1 */class ConcreteLogger extends Logger with Cloneable{ override def log(msg: String) = println("Log:"+msg) //复写Logger trait中log抽象方法 def concreteLogger{ log("It's me") }}/** * 在使用对象混入trait使用的前提是 该TraitLogger要继承复写方法的那个trait */trait TraitLogger extends Logger{ override def log(msg: String){ println("TraitLogger log content is :" + msg) }}trait TraitLoggered{ def logged(msg: String){ println("TraitLoggered log content is :" + msg) }}/** * Scala中作为接口的trait、在对象中混入trait */object InterfaceOps { def main(args: Array[String]): Unit = { val concreteLogger = new ConcreteLogger concreteLogger.concreteLogger //row result : Log:It's me val concreteLogger1 = new ConcreteLogger with TraitLogger //在实例化是混入trait 则会调用TraitLogger中的log concreteLogger1.concreteLogger //row result : TraitLogger log content is :It's me }}
以上内容是从王家林老师DT大数据课程第14讲的学习笔记和个人整理。
DT大数据微信公众账号:DT_Spark
王家林老师QQ:1740415547
王家林老师微信号:18610086859
第14讲视频网站地址:http://pan.baidu.com/s/1mgL2t9u
0 0
- Dt大数据梦工厂王家林老师 Scala实战详解之第14讲 Scala中作为接口的trait、在对象中混入trait代码实战
- Scala 深入浅出实战经典 第14讲:Scala中作为接口的trait、在对象中混入trait代码实战
- scala-13 Scala中作为接口的trait、在对象中混入trait代码实战
- Scala学习第十四天 Scala中作为接口的trait、在对象中混入trait代码实战
- 14.Scala中作为接口的trait、在对象中混入trait代码实战
- Dt大数据梦工厂王家林老师 Scala实战详解之第16讲 Scala中包的定义、包对象、包的引用、包的隐式引用
- Dt大数据梦工厂王家林老师 Scala实战详解之第9讲 Scala的内部类实战详解
- Dt大数据梦工厂王家林老师 Scala实战详解之第17讲 Scala中包、类、对象、成员、伴生类、伴生对象访问权限
- Dt大数据梦工厂王家林老师 Scala实战详解之第7讲 Scala类的属性和对象私有字段实战详解
- Dt大数据梦工厂王家林老师 Scala实战详解之第12讲 Scala中的继承:超类的构造、重写字段、重写方法代码实战
- Dt大数据梦工厂王家林老师 Scala实战详解之第5讲 Scala数组操作实战详解
- Dt大数据梦工厂王家林老师 Scala实战详解之第11讲 Scala中的apply实战详解
- Dt大数据梦工厂王家林老师 Scala实战详解之第10讲 Scala单例对象、伴生对象实战详解
- Dt大数据梦工厂王家林老师 Scala实战详解之第6讲 Map、Tuple、Zip实战解析
- Dt大数据梦工厂王家林老师 Scala实战详解之第13讲 抽象类、抽象字段、抽象方法
- Dt大数据梦工厂王家林老师 Scala实战详解之第8讲 Scala主构造器、私有构造器、构造器重载实战详解
- Dt大数据梦工厂王家林老师 Scala实战详解之第4讲 For与Function进阶实战、Lazy的使用
- Dt大数据梦工厂王家林老师 Scala实战详解之 第2讲Scala函数定义,流程控制,异常处理入门实战
- USACO Section 1.2 Complete Search
- Dt大数据梦工厂王家林老师 Scala实战详解之第12讲 Scala中的继承:超类的构造、重写字段、重写方法代码实战
- 我的2年苦逼狗血相亲经历(4)
- Dt大数据梦工厂王家林老师 Scala实战详解之第13讲 抽象类、抽象字段、抽象方法
- LightOJ 1003 - Drunk【拓扑排序】
- Dt大数据梦工厂王家林老师 Scala实战详解之第14讲 Scala中作为接口的trait、在对象中混入trait代码实战
- Dt大数据梦工厂王家林老师 Scala实战详解之第15讲 Scala多重继承、多重继承构造器执行顺序及AOP实现
- 我的2年苦逼狗血相亲经历(5)
- Makefile的简单语法
- The requested URL Not Found问题
- 我的2年苦逼狗血相亲经历(6)
- MySQLのMySQL备份
- C++动态库导出类
- Inflater&TabLayout&ViewPager