자바 조건부 컴파일

Shubham Vora 2023년10월12일
  1. Java의 조건부 컴파일
  2. Java에서 조건부 컴파일에 부울 변수 사용
자바 조건부 컴파일

이 기사에서는 Java 코드를 조건부로 컴파일하는 방법을 배웁니다. 조건부 컴파일은 특정 조건(Java 버전별 또는 OS별일 수 있음)을 기반으로 코드를 컴파일하는 동안 코드 청크를 제거합니다.

Java의 조건부 컴파일

조건부 컴파일을 설정하는 가장 간단한 방법은 전역 부울 변수를 만들고 해당 값에 따라 코드를 컴파일하는 것입니다. 아래 예제 코드를 통해 조건부 컴파일을 이해해 보자.

Java에서 조건부 컴파일에 부울 변수 사용

아래 예에서는 javaversion.java라는 파일 이름을 생성하고 public static 변수 이름인 Version을 포함하는 파일 내부에 Javaversion 클래스를 생성했습니다.

test.java 파일에서 Version 변수에 액세스하고 버전에 따라 Java 코드를 컴파일합니다.

자바버전.자바:

class Javaversion {
  //
  public static final String Version = "Java 19";
}

테스트.자바:

class Test {
  public static void main(String[] args) {
    System.out.println("Hello, World!");
    if (Javaversion.Version == "Java 19") {
      System.out.println("Code block executed for java 19");
    } else {
      System.out.println("Code block executed for < java 19");
    }
  }
}

출력:

Hello, World!
Code block executed for java 19

또한 사용자는 Java의 다른 코드로 다른 파일을 만들고 특정 조건에 따라 다른 파일을 컴파일할 수 있습니다.

try {
  Class.forName(<class Name>);
  // execute the code for the `Java 17` version
  return new Java17();
} catch (Exception e) {
  // fall back
  return new Java19();
}

위의 의사 코드에서 우리는 Class.name() 메서드를 사용하여 클래스를 감지하고 Java17 또는 Java19 클래스의 객체를 반환합니다. 여기에서 사용자는 다른 파일에 Java17Java19 클래스를 생성해야 합니다.

작가: Shubham Vora
Shubham Vora avatar Shubham Vora avatar

Shubham is a software developer interested in learning and writing about various technologies. He loves to help people by sharing vast knowledge about modern technologies via different platforms such as the DelftStack.com website.

LinkedIn GitHub

관련 문장 - Java Compile