在 Java 中呼叫另一個方法中的變數
Rupam Yadav
2023年10月12日
在本教程中,我們將學習如何在 Java 中呼叫另一個方法中的變數。這取決於變數的型別和它在類內的作用域。
Java 中在同一個類內的靜態方法中呼叫一個靜態變數
在同一個類中宣告的靜態變數可以在 main
方法和其他方法中被訪問。在下面的例子中,在 main
方法的作用域內宣告的變數 val
只能在該作用域內使用,而靜態變數 y
則在其他靜態方法內訪問。
我們可以訪問受範圍限制的變數,將其傳遞給我們打算訪問該變數的方法。
public class CallAVariable {
static int y = 4; // declared inside class scope.
public static void main(String[] args) {
String val = "Hello"; // declared inside the scope of main method hence available in main only.
System.out.println("In Main where static variable y is: " + y);
callInNormal(val);
}
public static void callInNormal(String val) {
System.out.println("Value of static variable y in a static method is : " + y
+ " and String passed is: " + val);
}
}
輸出:
In Main where static variable y is: 4
Value of static variable y in a static method is : 4 and String passed is: Hello
Java 中從同一個類中的非靜態方法呼叫靜態變數
變數 y
是靜態的,但是訪問它的方法是非靜態的。因此,我們需要建立一個類的例項來訪問該方法和非靜態變數 x
。
public class CallAVariable {
int x = 2;
static int y = 6;
public static void main(String[] args) {
// since the method is non static it needs to be called on the instance of class.
// and so does the variable x.
CallAVariable i = new CallAVariable();
System.out.println("In Main where static variable y is: " + y + " and x is: " + i.x);
i.callInNormal(i.x);
}
public void callInNormal(int x) {
CallAVariable i = new CallAVariable();
System.out.println("Non static variable x is : " + x + " and static variable y is: " + y);
}
}
輸出:
In Main where static variable y is: 6 and x is: 2
Non static variable x is : 2 and static variable y is: 6
作者: Rupam Yadav
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn相關文章 - Java Class
- Java 中的內部類和靜態巢狀類
- Java 單例類
- .java 和 .class 之間的區別
- Java 中的 Class is not abstract and does not override abstract method 錯誤
- Java 中的 Class.forName() 和 Class.forName().newInstance()
- Java 中的匿名內部類