引言Scala是一门既面向对象,又面向过程的语言,Scala的函数式编程,就是Scala面向过程最好的佐证。也真是因此让Scala具备了Java所不具备的更强大的功能和特性。而之所以Scala一直没有替代Java,一是因为Java诞生早,基于Java开发了大量知名的工程,并且最重要的是Java现在不 ...
分类:
其他好文 时间:
2017-12-14 23:50:52
阅读次数:
218
基础知识 基础知识 1 将trait作为接口使用此时Trait就与Java中的接口非常类似,不过注意,在Scala中无论继承还是trait,统一都是extends关键字。Scala跟Java 8前一样不支持对类进行多继承,但是支持多重继承trait,使用with关键字即可 1 将trait作为接口使 ...
分类:
其他好文 时间:
2017-12-13 20:10:35
阅读次数:
220
extends与Java一样,也是使用extends关键字,使用继承可以有效复用代码 extends 与Java一样,也是使用extends关键字,使用继承可以有效复用代码 class Person { private var name = "leo" def getName = name } cl ...
分类:
其他好文 时间:
2017-12-13 00:13:34
阅读次数:
256
定义类 定义类 // 定义类,包含field以及method class HelloWorld { private var name = "Leo" def sayHello() { println("Hello" + name)} def getName = name } defined clas ...
分类:
其他好文 时间:
2017-12-11 14:26:02
阅读次数:
206
objectobject相当于class的单个实例,类似于Java中的static,通常在里面放一些静态的field和method。 第一次调用object中的方法时,会执行object的constructor,也就是object内部不在method或者代码块中的所有代码,但是object不能定义接 ...
分类:
其他好文 时间:
2017-12-11 13:50:42
阅读次数:
3204
Array 与Java的Array类似,也是长度不可变的数组,此外,由于Scala与Java都是运行在JVM中,双方可以互相调用,因此Scala数组的底层实际上是Java数组。 注意:访问数组中元素使用()而不是Java中的 [] 可以直接使用Array()创建数组,元素类型自动推断( ...
分类:
编程语言 时间:
2017-12-10 18:27:37
阅读次数:
185
尝试设计一套特质,灵活的改动整数队列。队列有两种操作:put把整数放入队列,get从尾部取出它们。队列是先进先出的,get应该依照入队列的顺序取数据。提示:可以用mutable.ArrayBuffer 模拟队列在报告中体现出类的线性化特性,要求扩展类实现如下三个功能1.Doubling 把放到队列中 ...
分类:
其他好文 时间:
2017-11-12 17:24:23
阅读次数:
192
一、介绍 参考http://luchunli.blog.51cto.com/2368057/1705025 我们知道,如果几个类有某些共通的方法或者字段,那么从它们多重继承时,就会出现麻烦。所以Java被设计成 不支持多重继承,但可以实现任意多的接口。接口只能包含抽象方法,不能包含字段。 特质 tr ...
分类:
其他好文 时间:
2017-11-11 21:27:56
阅读次数:
228
本节主要内容 Ordering与Ordered特质 上下文界定(Context Bound) 多重界定 类型约束 1. Ordering与Ordered特质 在介绍上下文界定之前,我们对scala中的Ordering与Ordered之间的关联与差别进行解说,先看Ordering、Ordered的类继 ...
分类:
其他好文 时间:
2017-08-05 19:44:51
阅读次数:
167
作者:摆摆少年梦 视频地址:http://blog.csdn.net/wsscy2004/article/details/38440247 本节主要内容 Type Specialization Manifest、TypeTag、ClassTag Scala类型系统总结 在scala中,类(class ...
分类:
其他好文 时间:
2017-07-19 20:39:26
阅读次数:
276