/**
* @author Guohui Li
*/
/**
* 1、trait中未被实现的方法默认就是抽象的
* 2、在重写trait的抽象方法时不需要给出override关键字
* 3、如果你需要的trait不止一个,可以用with关键字来添加额外的trait
* 4、Logger with Cloneable 是一个整体,由类来扩展
*/
//作为接口的trait,在对象中混入trait代码
trait Logger {
// def log(msg: String) //这是个抽象方法,trait中未被实现的方法默认就是抽象的

def log(msg:String){}
}
//Logger中的方法被“混入”到了ConcreteLogger类中
class ConcreteLogger extends Logger with Cloneable { //用extends而非implements

// override def log(msg: String) = println("Log:" + msg)
def concreteLog {
log("It's me!!!")
}
}

trait TraitLogger extends Logger {
override def log(msg: String) {
println("TraitLogger Log content is :" + msg)
}
}

trait TraitLoggered {
def loged(msg: String) {
println("TraitLoggered Log content is : " + msg)
}
}

object UseTrait {
def main(args: Array[String]): Unit = {
val logger = new ConcreteLogger with TraitLogger
logger.concreteLog
}
}

附:

本博客说明:

1.整理思路,提高自己。

2.受教于王家林老师,​有所收获,故推荐。

3.博客注重实践,多余的文字就不多说了,都是做技术的。

4.信息来源于 DT大数据梦工厂微信公众账号:DT_Spark。​

DT大数据梦工厂的微信公众号是DT_Spark,每天都会有大数据实战视频发布,请您持续学习。

Scala 深入浅出实战经典(1-64讲)完整视频、PPT、代码下载:

百度云盘:http://pan.baidu.com/s/1c0noOt6
腾讯微云:http://url.cn/TnGbdC
360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码 45e2

转载于:https://www.cnblogs.com/leegh1992/p/4684925.html

Scala学习笔记-5相关推荐

  1. Scala 学习笔记

    Scala 学习笔记 1 object func_exp { 2 println("Welcome to the Scala worksheet") //> Welcome ...

  2. Scala学习笔记04:内建控制结构

    Scala学习笔记04:内建控制结构 scala提供的控制结构并不算多,因为在函数式编程中,可以自己开发出各种功能的控制结构,所以scala提供的原生控制结构仅仅够用为止. 1.if - 判断 if是 ...

  3. Scala学习笔记03:操作符

    Scala学习笔记03:操作符 一.scala中操作符与方法的等价性 scala中操作符即方法.方法即操作符.scala中操作符其实是普通方法调用的另一种表现形式,运算符的使用其实就是隐含地调用对应的 ...

  4. Scala学习笔记02:数据类型、常量与变量

    Scala学习笔记02:数据类型.常量与变量 一.数据类型 1.基本数据类型 Byte 字节型 Short 短整型 Int 整型 Long 长整型 Char 字符型 String 字符串 Float ...

  5. Scala学习笔记(三)

    Scala学习笔记(三) 一.模式匹配 1. 简单模式匹配 2. 匹配类型 3. 守卫 4. 匹配样例类 5. 匹配数组 6. 匹配列表 7. 匹配元组 8. 变量声明中的模式匹配 8.1 获取数组中 ...

  6. Scala学习笔记(一)

    Scala学习笔记(一) 一.Scala简介 二.Scala安装与配置 1. 安装JDK 2. 安装Scala SDK 3. 安装IDEA插件 三.Scala解释器 1. 启动Scala解释器 2. ...

  7. 机器学习(三)--- scala学习笔记

    Scala是一门多范式的编程语言,一种类似Java的编程语言,设计初衷是实现可伸缩的语言.并集成面向对象编程和函数式编程的各种特性. Spark是UC Berkeley AMP lab所开源的类Had ...

  8. Scala学习笔记-环境搭建以及简单语法

    关于环境的搭建,去官网下载JDK8和Scala的IDE就可以了,Scala的IDE是基于Eclipse的. 下面直接上代码: 这是项目目录: A是scala写的: package first impo ...

  9. Scala学习笔记总结

    Scala学习网站:https://www.runoob.com/scala/scala-intro.html scala总结: Scala编程语言学习总结_hjy1821的博客-CSDN博客_sca ...

  10. Scala学习笔记-方便查找使用 为Spark学习打基础

    Scala学习 注意 伊始 为什么是Scala 网课 环境 电脑环境安装 关于版本的声明 我的环境和版本 IDEA插件安装 IDEA关联Scala源码 基础部分1 文档注释和生成 字符串的三种输出 变 ...

最新文章

  1. 关于SSL配置的报告
  2. python编程从入门到精通pdf-终于晓得python编程从入门到精通
  3. 【WEB安全】轻松检测钓鱼网站的技巧
  4. ShaderLab学习小结(一)最简化的顶点片断Shader
  5. C 怎么读取Cpp文件_python之调用C加速计算(一)
  6. 邮箱smtpserver及port收集
  7. 信息学奥赛一本通 1080:余数相同问题 | OpenJudge NOI 小学奥数/2.1 7647:余数相同问题
  8. interllij IDEA2017快捷键风格修改为myEclipse快捷键风格
  9. 由mysql将视图数据导入Spss,发现别名字段数据不准确
  10. Trick(十)——any/all 实现
  11. Springboot项目启动时加载数据库数据到内存
  12. 联想机房同传日记——2014/09/17
  13. 斗鱼开源基于Go实现的微服务框架 Jupiter
  14. AKKA:大数据下的并发编程模型
  15. springboot 集成J2Cache
  16. 如何根据电脑显卡选择CUDA版本及显卡驱动
  17. 无线网的dhcp服务器是什么意思,DHCP是什么意思?
  18. JAVA-day09-多线程
  19. Renderdoc调试总结
  20. 孙俪邓超港籍身份曝光揭明星卯足劲加入港籍

热门文章

  1. GSL库在VC6.0上的配置
  2. 如何使用Cisco命令阻止访问特定网站
  3. 步步为营 .NET 设计模式学习笔记 十四、Decorator(装饰模式)
  4. springAop @AfterReturning注解 获取返回值
  5. 8、Python与设计模式--门面模式
  6. 初始 DQN 程序 所遇到的问题
  7. 20160406作业
  8. Ubuntu 安装mysql和简单操作
  9. CowNew开源团队4月14日聚会
  10. FTP服务器的搭建及简单应用