[英]How to access String from one class to another?
例如,我有2個類和一個接口。
public class mainClass {
private String word;
}
public interface intWord {
public String getOutput();
public void setInput( String input );
public void setLevel ( int level );
}
public class secondClass implements intWord {
//class I want to be able to access 'word' from mainClass without extending it.
public String getOutput() {
}
public void setInput( String input ) {
}
public void setLevel ( int level ) {
}
}
我如何在不擴展mainClass的情況下訪問我的secondClass中的“單詞”? 我相信我可以在某些地方添加一些輔助方法以使其變得簡單....但是我不知道該怎么做!
在您的mainClass中,您可以添加一個“ getter”方法,如下所示
public class mainClass {
private String word;
public String getWord(){
return word;
}
}
然后從第二個類中調用getWord()
您還可以通過添加setter方法來動態設置第二類的單詞值:
public void setWord(String newWord){
word = newWord;
}
嘗試使用getWord()和setWord(String word)
在mainClass中運行並從那里開始。
假設要使用“ word”作為setInput方法的參數的一種方法是擁有mainClass的實例和使用getter來訪問字段word的方法。 這是它的樣子:
public static void main( String args[])
{
// Assuming word is not null
secondClass second_class = new secondClass ();
secondclass.setInput(mainClass.getWord());
}
另一種方法是讓您的字段字是一個靜態變量,並使用靜態getter返回它(不推薦)。 這是您的mainClass外觀:
public class mainClass {
private static String word;
public static String getWord(){
return word;
}
}
這是您將如何訪問它:
public static void main( String args[])
{
mainClass mainclass = new mainClass();
// Assuming word is not null
secondClass second = new secondClass ();
secondclass.setInput(mainClass.getWord());
}
最好的方法是為private String word;
創建setter和getter private String word;
在mainClass
創建一個mainClass對象,並在secondClass
創建一個對象,然后訪問getter和setter來獲取/設置word
的值。 另一件事,如果您知道該word
是全局變量,則可以將其創建為public string word;
而不是private並在secondClass中extend
mainClass以便直接訪問它。
僅出於您的知識,Java遵循約定,其中類名應以大寫字母開頭,然后遵循駝峰大小寫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.