Java中的面向对象:万物皆对象. 我们要封装数据,定义模板等操作,素以我们需要面向对象. ========================================================================= 一.Scala中的单例对象 在java中用static关键字修饰方法或成员变量,作用是可以直接通过"类名."的方式调用方法或变量 在Scala中没有static关键字,Scala给我们提供了单例对象的模式来实现,关键字是object object P…
一.类 1.类的定义 scala语言中没有static成员存在,但是scala允许以某种方式去使用static成员这个就是伴生机制,所谓伴生,就是在语言层面上,把static成员和非static成员用不同的表达方式,class和object,但双方具有相同的package和name,但是最终编译器会把他们编译到一起,这是纯粹从语法层面上的约定.通过javap可以反编译看到.另外一个小魔法就是单例,单例本质上是通过伴生机制完成的,直接由编译器生成一个class对象,这样至少在底层能够统一. //在…
类是对象的蓝图.一旦你定义了类,你就可以用关键字new从类的蓝图里创建对象.比方说,如果给出了类的定义: class ChecksumAccumulator { // class definition goes here } 你就能创建ChecksumAccumulator对象: new CheckSumAccumulator 类定义里,可以放置字段和方法,这些被笼统地称为成员:member.字段,不管是用val或是用var定义的,都是指向对象的变量方法,用def定义,包含了可执行的代码.字段保…
泛型 类型边界 视图界定 逆变和协变 上下文界定 源代码 1.泛型 泛型用于指定方法或类可以接受任意类型参数,参数在实际使用时才被确定,泛型可以有效地增强程序的适用性, 使用泛型可以使得类或方法具有更强的通用性. 在Scala中用方括号来定义类型参数,即用[]表示, 如 class Pair[T, S](val first, val) 以上将定义一个带有两个类型参数T和S的类,带有类型参数的类是泛型的.如果把类型参数替换成实际的类型将得到普通的类. *简单理解就是类型或者方法后面加个中括号就表示…
http://blog.csdn.net/pipisorry/article/details/52902609 Scala类和对象 类是对象的抽象,而对象是类的具体实例.类是抽象的,不占用内存,而对象是具体的,占用存储空间.类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板. 类的创建和实例化 class Point(xc: Int, yc: Int) { var x: Int = xc var y: Int = yc def move(dx: Int, dy: I…
隐式引用(Implicit Import) Scala会自己主动为每一个程序加上几个隐式引用,就像Java程序会自己主动加上java.lang包一样. Scala中.下面三个包的内容会隐式引用到每一个程序上.所不同的是.Scala还会隐式加进对Predef的引用.这极慷慨便了程序猿的工作. import java.lang._ // in JVM projects, or system namespace in .NET import scala._ // everything in the s…
1.单例对象.Scala没有静态方法或字段,可以使用object这个语法结构来达到同样的目的.对象定义了单个实例,包含了你想要的特性. object Accounts{ def newUniqueNumber()={lastNumber+=;lastNumber} } Scala没有静态的概念,如果需要定义静态成员,可以通过object来实现 编译完成后,会生成对应的类,方法都是静态方法,非静态成员对应到单例类中去. 单例类以Util&来作为类名称 scala>object Util{ //…
0X01 前言 我的主语言是python,说起java,想起了大二(三年前)上课时教过,课程设计的时候曾经做过个俄罗斯方块,后面其他设计copy代码读懂代码(再后面的课设就用python了). 本次涉及到大数据团队给出的代码,java + scala + flink.考虑到一些小的需求.设计改动.数据对接,一提一沟通一写一联调这一过程需要几天,这样的过程有好多次,自己做会快点.于是开始面对多年未见的老朋友--java. 拿着代码,卡在了第一步--环境.maven?pom.xml?总算学习了一下m…
快速了解Scala技术栈 我无可救药地成为了Scala的超级粉丝.在我使用Scala开发项目以及编写框架后,它就仿佛凝聚成为一个巨大的黑洞,吸引力使我不得不飞向它,以至于开始背离Java.固然Java 8为Java阵营增添了一丝亮色,却是望眼欲穿,千呼万唤始出来.而Scala程序员,却早就在享受lambda.高阶函数.trait.隐式转换等带来的福利了. Java像是一头史前巨兽,它在OO的方向上几乎走到了极致,硬将它拉入FP阵营,确乎有些强人所难了.而Scala则不,因为它的诞生就是OO与FP…
面对对象常用的一些关键子:http://www.cnblogs.com/xishaonian/p/6146794.html排版不是很好望见谅. THE END…