簡體   English   中英

用於處理Java中void方法返回的虛擬變量?

[英]Dummy variable to handle return of a void method in Java?

當我需要在當前對象的方法之外運行表達式(例如外部方法)時,我為該對象類聲明一個字段變量,並將該表達式的返回值賦給該變量。 如下,

class{
variabletype a=expression();
  public int method(){
  -----}
}

這里在開始任何類的方法之前計算expression()。 除非返回類型的expression()為void,否則它完美地工作。 即使表達式()沒有返回任何內容,我正在尋找的方法也是如此。 更具體地說,我需要一種虛擬變量來執行與上面顯示的代碼的第2行相同的操作,即使expression()沒有返回任何內容。 注意:我無權訪問該類的構造函數。

您可以使用實例初始化程序塊:

class YourClass
{

    {
        expression ();
    }

    ...
}

這將在類的每個構造函數的主體之前執行expression() expression()返回某個東西,還是具有void返回類型並不重要。

您不必引入任何虛擬實例變量。

順便說一下,你的Here expression() is evaluated before start of any methods (except constructor) of the class. 假設不准確。 實例變量在構造函數體執行之前初始化(但在超類構造函數之后)。 因此, expression()在類的構造函數的主體之前執行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM