zoukankan      html  css  js  c++  java
  • Scala 深入浅出实战经典 第81讲:Scala中List的构造是的类型约束逆变、协变、下界详解

    王家林亲授《DT大数据梦工厂》大数据实战视频 Scala 深入浅出实战经典(1-97讲)完整视频、PPT、代码下载:
    百度云盘:http://pan.baidu.com/s/1c0noOt6
    腾讯微云:http://url.cn/TnGbdC
    360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码 45e2
    土豆:http://www.tudou.com/programs/view/ceac2IoB-ik/
    优酷:http://v.youku.com/v_show/id_XMTI4MTE2NjQ4NA==.html?from=s1.8-1-1.2
    爱奇艺:http://www.iqiyi.com/w_19rthwtj7d.html#vfrm=2-3-0-1
    腾讯视频:http://v.qq.com/boke/page/j/0/q/j0161lu5tcq.html
    技术爱好者尤其是大数据爱好者 可以加DT大数据梦工厂的qq群

    DT大数据梦工厂① :462923555
    DT大数据梦工厂②:437123764
    DT大数据梦工厂③ :418110145

    微信公众账号: DT_Spark
    王家林老师微信号: 18610086859
    王家林老师QQ: 1740415547
    王家林老师邮箱: 18610086859@126.com

    本视频由王家林老师, 亲自讲解, 完全通过代码实战把您带人大数据的时代.


    package com.parllay.scala.list

    /**
    * Created by richard on 15-9-8.
    * 第81讲:Scala中List的构造是的类型约束逆变、协变、下界详解
    */

    abstract class Big_Data
    class Hadoop extends Big_Data
    class Spark extends Big_Data

    object List_Constructor_Internals {

    def main(args: Array[String]) {

    val hadoop = new Hadoop :: Nil
    println(hadoop)
    val big_data = new Spark :: hadoop
    println(big_data)

    /**
    * output
    * List[Hadoop] = List(com.parllay.scala.list.Hadoop@4701bb2c)
    List[Big_Data] = List(com.parllay.scala.list.Spark@69dc7a0d, com.parllay.scala.list.Hadoop@4701bb2c)
    *
    * big_data的返回结果类型返回的是类型Big_Data了,why?
    *
    * 看::源码
       def ::[B >: A](x : B) : scala.collection.immutable.List[B] = { /* compiled code */ }
         通过源码发现返回值为 List[B] 是基类,是协变, 参数 是 逆变的过程
         当传入 new Spark 参数时,scala 编译器自动转化为其父类型 Big_Data
    */
    }

    }

  • 相关阅读:
    flock对文件锁定读写操作的问题 简单
    hdu 2899 Strange Fuction(二分)
    hdu 2199 Can you solve this equation? (二分)
    poj 3080 Blue Jeans (KMP)
    poj 2823 Sliding Window (单调队列)
    poj 2001 Shortest Prefixes (trie)
    poj 2503 Babelfish (trie)
    poj 1936 All in All
    hdu 3507 Print Article (DP, Monotone Queue)
    fzu 1894 志愿者选拔 (单调队列)
  • 原文地址:https://www.cnblogs.com/czh-liyu/p/4803535.html
Copyright © 2011-2022 走看看