2014-07-17 71 views
2

是什麼類型和類之間的切實差異斯卡拉

class person(val name: String, val weight: Int) 

type person = (String,Int) 

之間的實際差別?

+1

我會一個類型別名升級到(案例)類,如果'._1'和'._2'出現了這麼多次,沒有人能理解那些神奇的數字代表。 –

回答

1

類型別名只是別名。它們在編譯時被替換(解析)並且不再存在。因此,沒有辦法從Java代碼中引用它們。

0

在這種情況下,它意味着將一個元組與人類進行比較。根據我的理解,也許沒有比較。可能這個例子應該看起來像這樣?

class Person(val name: String, val weight: Int) 

type P = Person 

所以在這種情況下P只是Person的別名,沒有什麼奇特的。

我認爲,如果我們使用「類型」,您可能會對我們所獲得的結果感到困惑。據我所知,有幾種情況使關鍵字「type」非常有用。

  1. 蛋糕圖案或可堆疊性狀

性狀像{類型T}

性狀PersonLike延伸喜歡{倍率類型T =人}

  1. 如果類型太複雜了,你可以快捷方式

型T =(INT =>強度)=>(字符串=>字符串)

反正,我不知道這闡明你的困惑。