- Scala編程(第5版)
- (德)馬丁·奧德斯基等
- 359字
- 2022-05-06 15:51:44
6.3 重新實現toString方法
當我們在前一節中構建Rational實例時,編譯器打印了“Rational@ 5dc7841c”。編譯器是通過對Rational對象調用toString方法來獲取這個看上去有些奇怪的字符串的。Rational類默認繼承了java.lang.Object類的toString實現,這個實現只是簡單地打印出類名、@符號和一個十六進制的數字。toString方法的主要意圖是幫助程序員,在調試輸出語句、日志消息、測試失敗報告,以及編譯器和調試器輸出中給出相應的信息。目前由toString方法提供的結果并不是特別有幫助的,因為它沒有給出關于有理數的值的任何線索。一個更有用的toString實現可能是打印出Rational對象的分子和分母??梢酝ㄟ^給Rational類添加toString方法來重寫(override)默認的實現,就像這樣:

在方法定義之前的override修飾符表示前一個方法定義被重寫覆蓋了(第10章有更多相關內容)。由于Rational(有理數)現在可以漂亮地顯示了,我們移除了先前版本的Rational類中那段用于調試的println語句。可以在編譯器中測試Rational類的新行為:

推薦閱讀
- Go Web編程
- Android Wearable Programming
- JavaScript從入門到精通(微視頻精編版)
- Spring Boot+Spring Cloud+Vue+Element項目實戰:手把手教你開發權限管理系統
- Java Web及其框架技術
- PyTorch Artificial Intelligence Fundamentals
- Functional Kotlin
- JavaScript動態網頁開發詳解
- 零基礎學Python網絡爬蟲案例實戰全流程詳解(高級進階篇)
- Working with Odoo
- Visual Basic程序設計上機實驗教程
- Python編程:從入門到實踐(第3版)
- C指針原理揭秘:基于底層實現機制
- NGUI for Unity
- Application Development with Parse using iOS SDK