【笔记】SCALA笔记一
本帖最后由 偷偷去偷鸡 于 2016-11-8 18:37 编辑最近在学习SPARK,附上自己的笔记
Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的。
## SCALA基本概念 ##
对象- 对象有属性和行为。
类 - 类是对象的抽象,而对象是类的具体实例。
方法 - 方法描述的基本的行为,一个类可以包含多个方法。
字段 - 每个对象都有它唯一的实例变量集合,即字段。对象的属性通过给字段赋值来创建。
注意事项
区分大小写 - Scala是大小写敏感的,这意味着标识Hello 和 hello在Scala中会有不同的含义。
类名 - 对于所有的类名的第一个字母要大写。
方法名称 - 所有的方法名称的第一个字母用小写。
程序文件名 - 程序文件的名称应该与对象名称完全匹配。
def main(args: Array) - Scala程序从main()方法开始处理,这是每一个Scala程序的强制程序入口部分。
**标识符**
Scala 可以使用两种形式的标志符:字符数字和符号。
字符数字使用字母或是下划线开头,后面可以接字母或是数字。
符号标志符包含一个或多个符号,如+,:,? 等
符号“$”在 Scala 中也看作为字母,但应用程序应该避免使用"$"开始的标识符,以免造成冲突。
Scala 采用类似Java的 命名规则,首字符小写,比如 toString
**注释**
Scala 类似 Java 支持单行很多行注释。多行注释可以嵌套,但必须正确嵌套,一个注释开始符号对应一个结束符号。注释在 Scala 编译中会被忽略。
/* 这是一个 Scala 程序
*这是一行注释
*/
object HelloWorld {
def main(args: Array) {
println("HelloSpark!")
val s ="Hello 变量!";print(s)
}
}
这段代码就展示了scala是面向行的特性,语句可以用分号(;)结束或换行符。
**变量声明**
变量声明:
var A : String = "java"
常量声明:
val B : String = "HAHAH"
在Scala中声明变量和常量不一定要指明数据类型,在没有指明数据类型的情况下,其数据类型是通过变量或常量的初始值推断出来的。
http://i.imgur.com/RQDn1ZF.png
多个变量声明:
http://i.imgur.com/Pl4jF8v.png
## Scala 访问修饰符 ##
Scala 访问修饰符基本和Java的一样,分别有:private,protected,public。
如果没有写访问修饰符,默认是public。
private:
class Outer {
class Inner{
private def p() {println("Hello Inner")}
class InnerMo{
p()//可以
}
p()//没有报错
}
p()//报错了
}
Protected:
它只允许保护成员在定义了该成员的的类的子类中被访问
class Pa{
protected def x(){println("Hello Pa")}
}
class Son extends Pa{
x() //没有报错
}
class Other {
x() //报错了
}
**作用域保护**
限定了类和方法在哪个范围可以使用
格式为:private 或 protected
X可以表示为某个包
private就表示某个包下可见
----------T代表true
F就是false
仔细看了一下...发现..看不懂{:301_988:} 可伸缩的语言是一门多范式的编程语言,一种类似java的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。
很冷门貌似这门语言 可伸缩的语言是一门多范式的编程语言,一种类似java的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。
这门语言貌似很冷门 什么语言啊? ShadowY 发表于 2016-11-8 19:33
可伸缩的语言是一门多范式的编程语言,一种类似java的编程语言,设计初衷是要集成面向对象编程和函数式编程 ...
大数据学习SPARK要用的scala语言 zsl01 发表于 2016-11-8 20:26
什么语言啊?
hadoop大数据,学习SPARK要用的scala语言 偷偷去偷鸡 发表于 2016-11-8 21:01
大数据学习SPARK要用的scala语言
大数据还没接触还是菜鸟级别 大神学了哪些语言啊? ShadowY 发表于 2016-11-8 21:15
大数据还没接触还是菜鸟级别 大神学了哪些语言啊?
我也不是大神,就小菜鸟。学了点java和linux。现在hadoop的实时处理需要用到scala就学学呗 偷偷去偷鸡 发表于 2016-11-8 22:27
我也不是大神,就小菜鸟。学了点java和linux。现在hadoop的实时处理需要用到scala就学学呗
好吧。我才刚开始学编程
页:
[1]