簡體   English   中英

使用Counter類遞增和遞減:java

[英]Using a Counter class to increment and decrement: java

我在可視化此問題的最終產品時遇到了麻煩:

定義一個稱為Counter的類,其對象對事物進行計數。 此類的對象記錄一個為非負整數的計數。 包括將計數器設置為0,將計數增加1並將計數減小1的方法。請確保沒有方法允許計數器的值變為負數。 包括返回當前計數值的訪問器方法和將計數輸出到屏幕的方法。 不應有輸入法或其他變異器法。 可以設置計數器的唯一方法是將其設置為零的方法。 另外,包括toString方法和equals方法。 編寫一個或多個程序來測試類定義中的所有方法。

有人可以為我更好地解釋這個問題嗎?

編寫定義類的代碼。 班級名稱應為Counter (請考慮:這意味着文件名是什么?請記住,我們希望它是一個public類,以便我們可以將其用於測試。)使用Counter來對事物進行計數(不足為奇)。

為此,該類的每個實例將包含一個“ count”值。 (認為​​:該值的好名字是什么?我們如何為屬於該實例的類的每個實例分別設置一個值?)該值不得為負。 (很明顯;您怎么會有一個負數的事物?)您應該確保該值不會變為負數(如果您以遠程正常的方式進行操作,則該值應自動發生)。

該類應提供以下功能:

  • 一種將計數值設置為0的方法。(請注意:此方法的好名字是什么?它應該是public的,因為它是其他代碼使用該類的一部分。請考慮:您是否需要任何參數這種方法?如果可以,怎么辦?)

  • 一種將計數增加1的方法。(請考慮:如上所述)。

  • 一種將計數減1的方法(請考慮:同上。此外,如果計數已經為0,會發生什么情況,因為我們不能讓其變為負數,請決定在這種情況下的處理方法。)

  • 一種返回當前計數值的方法。 (這稱為“訪問器”)。

  • 一種顯示當前計數值的方法。 (注意:這在設計上是一個非常糟糕的主意,但是您的分配需要它。提示:使用System.out的方法之一輸出到屏幕。)

  • 一種稱為toString的方法,該方法返回計數器的String表示形式。 該參數不應帶有任何參數,並且必須返回String。 (這是Java中大多數對象提供的標准功能。請考慮:除了計數值之外,字符串中還應該包含其他內容嗎?)

  • 一種稱為equals的方法,該方法將Counter與另一個Counter比較是否相等。 此方法必須僅使用一個參數,即一個Counter實例,並返回一個boolean指示兩個Counter是否相等。 (思考:什么決定兩個計數器是否“相等”?)

該類不應提供以下任何功能:

  • 更改計數器值的任何其他方法(尤其是不是一種從標准輸入讀取值的方法)。

編寫一個創建一些Counter實例並使用其方法的程序。 程序應通過產生與您閱讀主程序所期望的輸出相符的輸出,來證明您的Counter類的行為符合預期。 (提示:由於這是Java,因此我們需要使用public static void main(String[] args)方法為該程序提供另一個類。將其放在另一個文件中。您可能需要使用packageimport語句,以便主程序可以在另一個文件中找到您的Counter類。請確保您了解如何編譯和運行Java類。)

最終產品是一類具有問題中描述的方法的產品。 您可能還應該提供一個測試程序,以驗證該程序對某些示例數據是否按預期工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM