Scala是一门以Java虚拟机(JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的 静态类型编程语言(静态语言需要提前编译的如:Java、c、c++等,动态语言如:js)。
1) Scala是一门多范式的编程语言,Scala支持面向对象和函数式编程。(多范式,就是多种编程方
法的意思。有面向过程、面向对象、泛型、函数式四种程序设计方法。)
2) Scala源代码(.scala)会被编译成Java字节码(.class),然后运行于JVM之上,并可以调用现有 的Java类库,实现两种语言的无缝对接。
3)Scala单作为一门语言来看,非常的简洁高效。
4)Scala在设计时,马丁·奥德斯基是参考了Java的设计思想,可以说Scala是源于Java,同时马丁·奥 德斯基也加入了自己的思想,将函数式编程语言的特点融合到JAVA中, 因此,对于学习过Java的同学, 只要在学习Scala的过程中,搞清楚Scala和Java相同点和不同点,就可以快速的掌握Scala这门语言。
1.2环境搭建基于JDK1.8
下载scala2.12.11
配置scala环境变量
1.3代码编写package chapter01
class Student(name:String,info: Int) {
def printInfo():Unit ={
println(name+" "+info+" "+Student.school)
}
}
object Student{
val school:String = "河北农业大学"
//伴生对象
def main(args: Array[String]): Unit = {
val student = new Student("张三",20)
student.printInfo()
}
}
Student$.class
package chapter01;
public final class Student$
{
public static MODULE$;
private final String school;
static
{
new ();
}
public String school()
{
return this.school;
}
public void main(String[] args) {
Student student = new Student("张三", 20);
student.printInfo();
}
private Student$() {
MODULE$ = this;
this.school = "河北农业大学";
}
}
Student.java
package chapter01; import scala.Predef.; import scala.reflect.ScalaSignature; @ScalaSignature(bytes=" 06 01}2Aa 03 07 01 37!Aa 03 01B 01B 03%q 03 03 05# 01t 05t 25! 03$ 21 251 03 01" 01( 21 25a 03 01" 01. 17 25tD 02# 013r 25YA 02# 014 21 251c 01" 015 21 35)dA1A 05 02YBaa 16 04! 02 239 02" 02 35 07t 03I$aB*uk 22,g 16 36 06 02 33 05I1r[1qi 26 24b'M 02 01't 01 01 03 05 02 22)5t!CC 01 24 03 25 318- 317b 23t)"C 01 04B]f 24VMZ 01 05] 06lWr 05 02 31?9 21 21$bt 035Ii 21a 07 06 0399ta 01 20:p_Rt 24B 01 20 23 03 31 01&/ 323fM&


