- Scala編程(第5版)
- (德)馬丁·奧德斯基等
- 246字
- 2022-05-06 15:51:45
6.6 自引用
關(guān)鍵字this指向當(dāng)前執(zhí)行方法的調(diào)用對象,當(dāng)被用在構(gòu)造方法里的時候,指向被構(gòu)造的對象實例。舉例來說,我們可以添加一個lessThan方法,以測試給定的Rational對象是否小于某個傳入的參數(shù):

在這里,this.numer指向執(zhí)行lessThan方法調(diào)用的對象的分子。也可以省去this前綴,只寫numer。這兩種表示法是等效的。
再舉一個不能省去this前綴的例子,假設(shè)我們要給Rational類添加一個max方法,用于返回給定的有理數(shù)和參數(shù)之間較大的那個:

在這里,第一個this是冗余的,完全可以不寫this,直接寫lessThan(that)。但第二個this代表了當(dāng)測試返回false時該方法的結(jié)果,如果不寫this,就沒有可返回的結(jié)果了。
推薦閱讀
- Mastering OpenLayers 3
- Java多線程編程實戰(zhàn)指南:設(shè)計模式篇(第2版)
- Advanced Machine Learning with Python
- Podman實戰(zhàn)
- H5頁面設(shè)計:Mugeda版(微課版)
- Getting Started with NativeScript
- HTML+CSS+JavaScript編程入門指南(全2冊)
- Python青少年趣味編程
- Hacking Android
- OpenCV 3.0 Computer Vision with Java
- Greenplum構(gòu)建實時數(shù)據(jù)倉庫實踐
- Xamarin Cross-Platform Development Cookbook
- H5頁面設(shè)計與制作(全彩慕課版·第2版)
- Roslyn Cookbook
- PHP編程(第4版)