版權(quán)申明:轉(zhuǎn)載請(qǐng)注明出處孩擂。
文章來源:http://bigdataer.net/?p=269
排版亂凸郑?請(qǐng)移步原文獲得更好的閱讀體驗(yàn)
1.針對(duì)不同字段生成的方法
字段 | 生成的方法 | 備注 |
---|---|---|
var/val name | 公有的name和name_=方法(僅var) | 可以被公開訪問 |
@BeanProperty val/var name | 公有的name,getName(),name_(僅var)谨湘,setName(僅var) | 與JavaBean互操作 |
private val/var name | 私有的name,name_(僅var) | 用于將字段的訪問限制在本類 |
private[this] val/var name | 無(wú) | 將字段訪問限制在同一個(gè)對(duì)象 |
private[類名] val/var name | 依賴于具體實(shí)現(xiàn) | 將字段的訪問權(quán)限賦予外部類 |
2.構(gòu)造器
2.1 輔助構(gòu)造器。
scala中輔助構(gòu)造器的名稱為this,輔助構(gòu)造器的使用由其他輔助構(gòu)造器或者主構(gòu)造器引用轻局。舉例:一個(gè)帶有兩個(gè)輔助構(gòu)造器的類誊涯。
class People{
private var name:String = ""
private var age:Int = 0
def this(name:String){
this.name = name
}
def this(name:String,age:Int){
this.name = name
this.age = age
}
}
2.2 主構(gòu)造器挡毅。
scala中主構(gòu)造器的參數(shù)直接放在類名之后,相對(duì)于java來說暴构,這種寫法更為簡(jiǎn)單跪呈。如:
class People(val name:String,val age:Int){
……
}
主構(gòu)造器參數(shù) | 生成的方法 |
---|---|
name:String | 對(duì)象私有字段,如果name沒被使用取逾,則不會(huì)生成name字段耗绿。 |
val/var name:String | 私有字段,公有g(shù)etter或setter方法砾隅。 |
private val/var name:String | 私有字段误阻,私有的getter或setter方法。 |
@BeanProperty val/var name:String | 私有字段晴埂,生成java版的getter或setter方法 |
2.3 主構(gòu)造器不同字段生成的方法究反。
主構(gòu)造器參數(shù) | 生成的方法 |
---|---|
name:String | 對(duì)象私有字段,如果name沒被使用邑时,則不會(huì)生成name字段奴紧。 |
val/var name:String | 私有字段,公有g(shù)etter或setter方法晶丘。 |
private val/var name:String | 私有字段黍氮,私有的getter或setter方法唐含。 |
@BeanProperty val/var name:String | 私有字段,生成java版的getter或setter方法 |
更多文章請(qǐng)關(guān)注微信公眾號(hào)bigdataer