创建类、属性
2018-01-03 本文已影响0人
lehuai
package day03
/**
* 创建类、属性
*声明类时不需要加public关键字,默认就是public
*一个类文件可以声明多个类
*/
class Person {
// 用val修饰的变量是只读的,相当于只有get方法,没有set方法。
val id: String = "100"
//用var修饰的变量相当于既有get又有get方法。
var name: String = _
// 用private修饰的属性,该属性属于对象私有变量,只能在本类和其伴生对象中访问
private var age: Int = _
// 用private[this]修饰后,该属性属于对象私有变量,只有本类访问,伴生对象也访问不到
private[this] val gender = "男"
}
object Person {
def main(args: Array[String]): Unit = {
val p = new Person()
p.name = "ningning"
p.age = 26
// println(p.id) // 用val修饰的属性只可读,不可修改。
println(p.name)
println(p.age)
// println(p.gender) // 访问不到
}
}
object Test1 {
def main(args: Array[String]): Unit = {
val p = new Person
p.name = "tingting"
// println(p.age) //无法访问
println(p.id)
println(p.name)
}
}