package com.jn.scala.hello
/**
* @author jiangning
*/
//类默认就是public的
class Person
{
// 1.定义变量必须有初始值
private var age
= 0
def increment(){age
+= 1}
def current
= age
}
class Student{
// 2.声明一个属性age,属性是private级别的默认
// 默认会自动生成get与set方法,不用像java一样写get与set方法
var age
= 0
private var privateAge
= 0
private[ this] var privateThisAge
= 0
def ages
= privateAge
// 默认只有get方法,没有set方法
val name
= "Scala"
// class内部可以调用私有属性,
def isYounger(other:
Student) = privateAge < other.privateAge
// def isYounger(other:
Student) = privateThisAge < other.privateThisAge
}
object HelloOOP {
def main(args:
Array[ String]) {
val person
= new Person()
person.increment()
person.increment()
println(person.current)
val student
= new Student()
// 默认定义一个set方法 def age_=(x$1: Int ):
Unit
student.age
= 10
// 默认定义一个get方法 def age: Int ,通过age方法取出age的值,
println(student.age)
println(student.name)
// student.name = "good"//不能进行值的改变,
}
}