package scala
import scala.beans.BeanProperty
// abstract private[this]
private[scala] class Obj private(val x:Int = 3,var y:String){
@BeanProperty var xy= ""
private var name = ""
private[this] var age =1
def this(y:String, name:String) {
this(3,y)
this.name = name
}
def this(y:String, name:String, age:Int) {
this(y, name)
this.age = age
}
def getName = {
this.name
}
def setName_=(newName:String) = {
this.name = newName
}
}
object Obj{
def apply(y: String): Obj = new Obj(3,y:String)
def unapply(arg: Obj): Option[(Int, String)] ={
if (arg.x != 3){
None
}else {
Some(arg.x,arg.y)
}
}
}
case class Cases (cases:String){
}
转载于:https://www.cnblogs.com/mrerror/p/10916281.html