云星数据---Scala实战系列(精品版)】:Scala入门教程027-Scala实战源码-Scala 的特质 (接口)03
2017-11-27 10:12
726 查看
Scala创建对象混入特质
创建对象时候混入特质,创建对象时可以混入多个特质,从左至4000
右依次构造;
对象混入的trait中如果有抽象成员,必须实现。(原理是匿名Z的子类)
package scala_learn.demo06_trait /** * Created by liguohua on 2017/3/1. */ class O4_TraitDemo { } object O4_TraitDemo { def main(args: Array[String]) { //创建对象时候混入特质 val v1 = new Birds with X v1.t1 //创建对象时可以混入多个特质,从左至右依次构造 val v2 = new Birds with X with Y v2.t1 v2.t2 //对象混入的trait中如果有抽象成员,必须实现。(原理是匿名Z的子类) val v3 = new Birds with X with Z with Y { override def t3 { println("son Z t3") } } v3.t1 v3.t2 v3.t3 } } trait X { def t1: Unit = { println("X t1") } } trait Y { def t2: Unit = { println("X t2") } } trait Z { def t3 } class Birds { }
相关文章推荐
- 云星数据---Scala实战系列(精品版)】:Scala入门教程030-Scala实战源码-Scala 的特质 (接口)06
- 云星数据---Scala实战系列(精品版)】:Scala入门教程028-Scala实战源码-Scala 的特质 (接口)04
- 云星数据---Scala实战系列(精品版)】:Scala入门教程025-Scala实战源码-Scala 的特质 (接口)01
- 云星数据---Scala实战系列(精品版)】:Scala入门教程029-Scala实战源码-Scala 的特质 (接口)05
- 云星数据---Scala实战系列(精品版)】:Scala入门教程035-Scala实战源码-Scala apply方法03 创建对象demo
- 云星数据---Scala实战系列(精品版)】:Scala入门教程052-Scala实战源码-Scala implicit 操作03
- 云星数据---Scala实战系列(精品版)】:Scala入门教程038-Scala实战源码-Scala match语句03 类型匹配
- 云星数据---Scala实战系列(精品版)】:Scala入门教程053-Scala实战源码-Scala implicit 操作04
- 云星数据---Scala实战系列(精品版)】:Scala入门教程011-Scala实战源码-变量声明
- 云星数据---Scala实战系列(精品版)】:Scala入门教程023-Scala实战源码-Scala 多态02
- 云星数据---Scala实战系列(精品版)】:Scala入门教程033-Scala实战源码-Scala apply方法01 调用
- 云星数据---Scala实战系列(精品版)】:Scala入门教程014-Scala实战源码-Scala函数定义与调用方式
- 云星数据---Scala实战系列(精品版)】:Scala入门教程020-Scala实战源码-Scala 继承关系
- 云星数据---Scala实战系列(精品版)】:Scala入门教程034-Scala实战源码-Scala apply方法02 初始化对象
- 云星数据---Scala实战系列(精品版)】:Scala入门教程040-Scala实战源码-Scala Case Class 02
- 云星数据---Scala实战系列(精品版)】:Scala入门教程047-Scala实战源码-Scala method操作
- 云星数据---Scala实战系列(精品版)】:Scala入门教程054-Scala实战源码-Scala implicit 操作05
- 云星数据---Scala实战系列(精品版)】:Scala入门教程043-Scala实战源码-Scala Set操作
- 云星数据---Scala实战系列(精品版)】:Scala入门教程012-Scala实战源码-Scala操作符
- 云星数据---Scala实战系列(精品版)】:Scala入门教程041-Scala实战源码-Scala 数组array