[英]return value of a method(java)
我的問題是關於方法的返回值。 在返回值 1 的method1中,當我在method2中調用它時,它不會要求我將其值放入變量中。 為什么會這樣? 方法返回的值不應該保存在變量內嗎? 現在method1返回值 1,這個 1 也沒有存儲在變量中。 現在這不是method2中的聲明。
public int method1(){
return 1;
}
public void method2(){
method1();//Shouldn't it be like int value=method1();?
}
return type
定義並約束從method
返回的值的數據類型。
public int method1(){
return 1;
}
在這里, 1
不像我們在變量中存儲值那樣存儲。 那么它是如何工作的呢?
"
Java Virtual Machine ( JVM
) is a program or software which takes Java bytecode
( .class
files) and converts the bytecode
(line by line) into machine understandable code. "
無論何時使用System.out.println(1);
它以相同的方式工作。 class 被轉換為字節碼,然后轉換為機器語言。
public void method2(){
get();
}
此method2()
也以相同的方式工作,但具有get()
nested
方法。 請記住, method2()
沒有任何return type
,並且get()
方法的值會丟失。
“放入”一個值只是將一些東西分配給一個變量。 編譯器不會要求您存儲變量。 每個 function 都有一個分配的 memory 來存儲它的返回值。 function 完成后,它將您返回的值存儲在該分配的位置。 然后它的工作就完成了。 如何處理它取決於您。
method1
是一個function, method2
是一個方法。 函數可以返回值。 可以將值分配給變量以供存儲和將來使用。 但是function計算和賦值是不同的操作,不一定粘在一起。 在您的情況下不會出現編譯錯誤,但從get()
返回的值將丟失。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.