Scala学习笔记-5
/**
* @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相关推荐
- Scala 学习笔记
Scala 学习笔记 1 object func_exp { 2 println("Welcome to the Scala worksheet") //> Welcome ...
- Scala学习笔记04:内建控制结构
Scala学习笔记04:内建控制结构 scala提供的控制结构并不算多,因为在函数式编程中,可以自己开发出各种功能的控制结构,所以scala提供的原生控制结构仅仅够用为止. 1.if - 判断 if是 ...
- Scala学习笔记03:操作符
Scala学习笔记03:操作符 一.scala中操作符与方法的等价性 scala中操作符即方法.方法即操作符.scala中操作符其实是普通方法调用的另一种表现形式,运算符的使用其实就是隐含地调用对应的 ...
- Scala学习笔记02:数据类型、常量与变量
Scala学习笔记02:数据类型.常量与变量 一.数据类型 1.基本数据类型 Byte 字节型 Short 短整型 Int 整型 Long 长整型 Char 字符型 String 字符串 Float ...
- Scala学习笔记(三)
Scala学习笔记(三) 一.模式匹配 1. 简单模式匹配 2. 匹配类型 3. 守卫 4. 匹配样例类 5. 匹配数组 6. 匹配列表 7. 匹配元组 8. 变量声明中的模式匹配 8.1 获取数组中 ...
- Scala学习笔记(一)
Scala学习笔记(一) 一.Scala简介 二.Scala安装与配置 1. 安装JDK 2. 安装Scala SDK 3. 安装IDEA插件 三.Scala解释器 1. 启动Scala解释器 2. ...
- 机器学习(三)--- scala学习笔记
Scala是一门多范式的编程语言,一种类似Java的编程语言,设计初衷是实现可伸缩的语言.并集成面向对象编程和函数式编程的各种特性. Spark是UC Berkeley AMP lab所开源的类Had ...
- Scala学习笔记-环境搭建以及简单语法
关于环境的搭建,去官网下载JDK8和Scala的IDE就可以了,Scala的IDE是基于Eclipse的. 下面直接上代码: 这是项目目录: A是scala写的: package first impo ...
- Scala学习笔记总结
Scala学习网站:https://www.runoob.com/scala/scala-intro.html scala总结: Scala编程语言学习总结_hjy1821的博客-CSDN博客_sca ...
- Scala学习笔记-方便查找使用 为Spark学习打基础
Scala学习 注意 伊始 为什么是Scala 网课 环境 电脑环境安装 关于版本的声明 我的环境和版本 IDEA插件安装 IDEA关联Scala源码 基础部分1 文档注释和生成 字符串的三种输出 变 ...
最新文章
- 关于SSL配置的报告
- python编程从入门到精通pdf-终于晓得python编程从入门到精通
- 【WEB安全】轻松检测钓鱼网站的技巧
- ShaderLab学习小结(一)最简化的顶点片断Shader
- C 怎么读取Cpp文件_python之调用C加速计算(一)
- 邮箱smtpserver及port收集
- 信息学奥赛一本通 1080:余数相同问题 | OpenJudge NOI 小学奥数/2.1 7647:余数相同问题
- interllij IDEA2017快捷键风格修改为myEclipse快捷键风格
- 由mysql将视图数据导入Spss,发现别名字段数据不准确
- Trick(十)——any/all 实现
- Springboot项目启动时加载数据库数据到内存
- 联想机房同传日记——2014/09/17
- 斗鱼开源基于Go实现的微服务框架 Jupiter
- AKKA:大数据下的并发编程模型
- springboot 集成J2Cache
- 如何根据电脑显卡选择CUDA版本及显卡驱动
- 无线网的dhcp服务器是什么意思,DHCP是什么意思?
- JAVA-day09-多线程
- Renderdoc调试总结
- 孙俪邓超港籍身份曝光揭明星卯足劲加入港籍