簡體   English   中英

將對象作為參數傳遞給方法(Java)

[英]Passing an object as parameter to a method (Java)

主文件

我的課

我遇到的問題是,當我嘗試編譯所有程序時,它告訴我它無法在主文件的第 17 行中找到所有變量。

我必須將對象傳遞給printmovieinfo方法。

您的printMovie方法采用名為citizenkaneMovie參數(這是一個不好的名稱,因為該方法應該可用於任何電影,而不僅僅是那部電影)。 要獲取標題和其他信息,您需要告訴程序它將從citizenkane獲取信息。 它不會讀你的心。

問題是在Movie類中,您提供了設置該信息的方法,但沒有提供獲取信息的方法。 除了set方法之外,您還需要get方法來獲取信息,例如:

public String getTitle() {
    return title;
}

然后,如果您有一個名為m的電影對象,您可以使用m.getTitle()來獲取標題。 m.title不起作用,因為Movietitle字段是private ,這意味着它對任何其他類不可見。 將此語法與您的citizenkane參數結合使用以檢索標題和其他信息。

printMovieInfo()使用引用citizenkane ,但請注意類Movie中的所有變量都是private因此您無法在printMovieInfo()訪問它們。 所以要么讓它們public ,要么為它們提供公共 getter 並在printMovieInfo()使用它們

在 Movie 類中編寫“get”方法。 這些只是返回私有變量的簡單函數。 然后使用citizenkane.getTitle() 在您的主類中訪問它們,依此類推。

暫無
暫無

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

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