val 不可变 var 可变
val定义值时,会做call-by-value操作,------------->定义时会立即执行等号右边的 且只在定义时执行
def则会做call-by-name操作。-------------> 定义不执行 使用一次 执行一次