2013-04-05 18 views
0

這是一個與任務相關的問題,所以我最好不要發佈任何代碼,但我的問題是具體的。在Eclipse中,使用另一種數據類型定義數據類型,只有後一個測試客戶端main()運行,如何只運行第一個?

我是Eclipse的新手,所以我只想知道我看到的是否正常,如果有出路。

我所做的是定義一個數據類型,它是一個包含構造函數,方法,測試客戶端(static void main())的類。我從外部庫中的另一個類中使用另一個數據類型。現有數據類型的名稱是WeightedQuickUnionUF ,簡稱WQUF。

我實例化了一個WQUF類型的變量來使用WQUF所具有的方法。我在我的類的buttom中編寫了一個測試客戶端(static void main()),以檢查我的方法是否工作正常。我使用了一個像10這樣的常量來初始化我的數據類型變量。然後我使用我的方法在該變量上。我使用一些println語句來輸出變量的狀態,以查看我的方法是否工作。

當我點擊Run來運行我的類時,控制檯顯示WQUF類正在運行並等待輸入。我打開了WQUF.class.Yes,裏面有一個測試客戶端void main()

我的意圖是隻使用WQUF中的方法和私有變量,當然我看不到私有變量。我不想運行需要輸入的WQUF測試客戶端。

我的問題是,我面對的情況是否正常?有沒有辦法避免運行WQUF測試客戶端?

PS:FindBugs的發現2 bugs.Said

死存儲到我的WeightedQuickUnionUF實例變量,而不是使用

。另一對變量的值 是

WeightedQuickUnionUF是一個不成文的字段

。不知道這是什麼意思。相關或虛驚。

回答

1

我相信這不是Eclipse相關的,但更像是你對Java的新手,並沒有完全弄明白它是如何工作的。

執行Java程序的主要入口點是「public static void(String [] arguments)」。這是你實例化你的第一個對象的地方(也可以調用它的一些方法)。所以當你在Eclipse中右鍵點擊你的類時,選擇「Run as java app」,它會自動尋找這樣的主要方法並調用它。那麼當你運行它時會發生什麼,真的取決於你在那個主要方法中編寫的代碼。

也許你應該發佈你的2班,以便我們更容易理解你的問題,並引導你走向正確的方向。

補充說明:

  • 「死店」意味着你不使用它以後
  • 「不成文場」值分配給一個字段/變量意味着你不分配一個值(自定義,構造函數,方法等),你嘗試之前使用它,所以它總是空

而且當你覺得與Java夠舒服,你可以看看這個JUnit或TestNG的庫,旨在幫助您以標準化的方式測試您的代碼,而不是噸通過使用主要方法。

乾杯

+0

同樣供將來參考:http://findbugs.sourceforge.net/bugDescriptions.html – Morfic 2013-04-05 16:18:05

+0

是的,男人,你的回答是我問題的一半解決方案。我在解決了其他問題後自己想到了整個問題,然後回到我放棄的地方這個。我錯過了Eclipse沒有提醒我的String []參數。但在此之前,您必須進入** Run Configurations **手動建立配置。在** Main Class **中鍵入我的類名。然後我得到了我想要的。所以,它與Eclipse相關或多或少。非常感謝。您的回答可能是我的選擇。 – 2013-04-05 18:23:07

0

我的問題是,我面對的情況是否正常? 這是絕對正常的,這就是我們所說的封裝。

有什麼辦法可以避免運行WQUF測試客戶端? 你想製作自己的測試客戶端方法嗎?嘗試從WQUF類擴展,所以它會是MyWQUF類然後覆蓋testClient()方法。

+0

均爲2級,礦山和WQUF,使用公共靜態無效的主要(),作爲測試現在client.Is清楚? – 2013-04-05 15:47:17

+0

恐怕我不明白你的意思,所以我編輯了我的帖子,使其更清晰。 – 2013-04-05 15:56:34

相關問題