
scala
lipc_
这个作者很懒,什么都没留下…
展开
-
Scala类型参数中协变(+)、逆变(-)、类型上界(<:)和类型下界(>:)的使用
有位je上的同学来短信向我问起了Scala类型参数中协变、逆变、类型上界和类型下界的使用方法和原理,自己虽然也刚学不久,在主要调查了《Programing in Scala》的19章后,试着在下面做一个总结。如有错误之处还请各位指正。 先说说协变和逆变(实际上还有非变)。协变和逆变主要是用来解决参数化类型的泛化问题。由于参数化类型的参数(参数类型)是可变的,当两个参数化类型的参数是继承关系转载 2016-07-16 10:06:22 · 326 阅读 · 0 评论 -
Scala中的隐式转换、隐式参数、隐式类
隐式转换是很多人学习Scala的难点,这是Scala的精髓之一: 下面看一下隐藏参数的例子: 上面的例子中使用了隐式参数,当然,你可以显示的指明参数: 下面看一下隐式类: http://book.51cto.com/art/201408/449453.htm http://my.oschina.n转载 2016-07-16 11:09:53 · 291 阅读 · 0 评论 -
Scala中的伴生对象apply方法和单例对象
动手实战Scala中的apply方法和单例对象 新建一个类: 额外提一点,放在object对象中的方法都是静态方法,如下所示: 接下来看一下apply方法的使用: 上面代码总当我们使用“val a = ApplyTest()”的使用会导致apply方法的调用并返回该方法调用的值,也就是ApplyTest的实例化对象。 Class中也转载 2016-07-16 11:17:10 · 637 阅读 · 0 评论 -
Scala Trait详解
除了从父类集成代码外,Scala中的类还允许从一个或者多个traits中导入代码。 对于Java程序员来说理解traits的最好方法就是把他们当作可以包含代码的接口(interface)。在Scala中,当一个类继承一个trait时,它就实现了这个trait的接口,同时还从这个trait中继承了所有的代码。 让我们通过一个典型的实例来看看这种trait机制是如何发挥作用的:排序对象。能转载 2016-07-16 11:24:17 · 2185 阅读 · 0 评论