應(yīng)用中自己寫的代碼和調(diào)用的第三方函數(shù)庫(kù)有著一個(gè)基本的區(qū)別:也就是你可以任意修改和擴(kuò)展自己寫的代碼,而一般來說在沒有源碼的情況下很難擴(kuò)展第三方函數(shù)庫(kù),只能利用函數(shù)庫(kù)提供什么就是什么。
C#3.0 支持靜態(tài)擴(kuò)展方法,可以為已經(jīng)定義的庫(kù),類進(jìn)行擴(kuò)展。
在 Scala 中解決這個(gè)問題是使用隱含類型變換和隱時(shí)參數(shù)。它們可以使調(diào)用函數(shù)庫(kù)變得更加方便,并避免一些繁瑣和顯而易見的細(xì)節(jié)。
Scala 的 implicit 可以有 implicit 類,方法和參數(shù)。
本系列文章介紹 Scala 的隱式變換和隱式參數(shù)的用途。