[英]How can I call a method from one class to another?
所以我在這堂課上
Public class Java2MySql {
public static void main(String[] args) {
Java2MySql j = new Java2MySql();
...
}
public static String selectValue() {
BlackBox blackBox = new BlackBox();
...
switch(case) {
case "C00":
caixaNegre.waste();
break;
}
}
還有這個班
public class CaixaNegre{
public static String waste(){
...
}
}
問題是我認為這是正確的,NetBeans不會顯示錯誤,但是一旦我嘗試在終端中運行它以對數據庫進行測試,它將顯示以下消息:
Java2MySql.java:50: error: cannot find symbol
CaixaNegre caixaNegre = new CaixaNegre();
^
symbol: class CaixaNegre
location: class Java2MySql
為什么?
類方法和對象方法之間有區別。 對象是類的實例。 因此,要能夠調用對象方法,首先需要該類的一個實例(一個對象)。
您的waste()方法是靜態方法,這意味着它成為類方法。 為了調用類方法,請使用類的全名(區分大小寫)+方法名。
在這種情況下,您應該使用:
CaixaNegre.waste();
代替
caixaNegre.waste();
記住:所有靜態的東西都屬於這個類。 所有不是所有內容都屬於該類的實例。
但是,最好使類成為對象實例,而不是讓所有內容都是靜態的。 這樣,您就可以以面向對象的方式進行編程。
我不確定您在做什么,因為出現錯誤,它表明您正在嘗試創建CaixaNegre類的實例。 在這種情況下,您必須在方法浪費中刪除static關鍵字。
至於您的錯誤:CaixaNegre類是否在其他程序包中? 如果是這樣,您導入了嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.