package com /** * Created by ZX on 2015/11/6. */ object VariableDemo { def main(args: Array[String]) { //1定义变量----------------------------------------- //使用val定义的变量值是不可变的,相当于java里用final修饰的变量 val i = 1 //使用var定义的变量是可变得,在Scala中鼓励使用val var s = "hello&qu…
协变 案例一: class Animal {} class Bird extends Animal {} class Animal {} class Bird extends Animal {} //协变 class Covariant[T](t:T){} val cov = new Covariant[Bird](new Bird) val cov2:Covariant[Animal] = cov c不能赋值给c2,因为Covariant定义成不变类型. 稍微改一下: class Animal…