[英]Passing an object as parameter to a method (Java)
您的printMovie
方法采用名為citizenkane
的Movie
參數(這是一個不好的名稱,因為該方法應該可用於任何電影,而不僅僅是那部電影)。 要獲取標題和其他信息,您需要告訴程序它將從citizenkane
獲取信息。 它不會讀你的心。
問題是在Movie
類中,您提供了設置該信息的方法,但沒有提供獲取信息的方法。 除了set
方法之外,您還需要get
方法來獲取信息,例如:
public String getTitle() {
return title;
}
然后,如果您有一個名為m
的電影對象,您可以使用m.getTitle()
來獲取標題。 m.title
不起作用,因為Movie
的title
字段是private
,這意味着它對任何其他類不可見。 將此語法與您的citizenkane
參數結合使用以檢索標題和其他信息。
在printMovieInfo()
使用引用citizenkane
,但請注意類Movie
中的所有變量都是private
因此您無法在printMovieInfo()
訪問它們。 所以要么讓它們public
,要么為它們提供公共 getter 並在printMovieInfo()
使用它們
在 Movie 類中編寫“get”方法。 這些只是返回私有變量的簡單函數。 然后使用citizenkane.getTitle() 在您的主類中訪問它們,依此類推。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.