如何用Java實現條件編譯

在 C 或 C++ 中,能夠經過預處理語句來實現條件編譯。代碼以下:java

#define DEBUG  
#IFDEF DEBUUG  
  /* 
   code block 1 
   */   
#ELSE  
  /* 
   code block 2 
  */  
#ENDIF

而Java中卻沒有預處理,宏定義這些東西,而有時在一些項目中,咱們可能須要條件編譯。那麼,在 Java 中,該如何實現條件編譯呢?
辦法是有的:定義一個 final 的變量,而後在 if 語句用中它隔開代碼。優化

public class Hello {  
    public static void main(String[] args) {  
        final boolean DEBUG = true;  
        if (DEBUG) {  
            System.out.println("Hello, world!");  
        }  else {
            // some code
        }
    }  
}

由於編譯器會對代碼進行優化,對於條件永遠爲 false 的語句,Java 編譯器將不會對其生成字節碼。code

相關文章
相關標籤/搜索