출시·고도화 중
Programming language · 1995년 공개
Java는 JVM 위에서 실행되는 정적 타입 객체 지향 언어로, 기업용 백엔드와 Android 앱, 대규모 데이터 시스템에서 널리 쓰입니다.
Java(자바)는 1995년 Sun Microsystems가 처음 공개한 범용 객체 지향 프로그래밍 언어로, 지금은 Oracle과 OpenJDK 커뮤니티가 함께 개발하고 있습니다. Java 소스 코드는 바이트코드로 컴파일되어 Java 가상 머신(JVM)에서 실행되므로, 같은 프로그램을 다시 컴파일하지 않고도 Windows, macOS, Linux에서 실행할 수 있습니다. 자동 메모리 관리와 엄격한 정적 타입 시스템 덕분에 많은 오류를 일찍 발견할 수 있고, 규모가 큰 코드베이스도 유지 보수하기 쉽습니다.
Java는 특히 오랜 기간 안정적으로 동작해야 하는 서버 쪽 소프트웨어에서 강점을 보입니다. Spring 같은 프레임워크로 만드는 웹 서비스와 API, 금융·트랜잭션 처리 시스템, Apache Kafka·Hadoop·Spark 같은 데이터 플랫폼에서 널리 쓰입니다. Android 개발에서도 오랫동안 쓰여 온 언어입니다. JVM의 JIT 컴파일러와 성숙한 가비지 컬렉터는 오래 실행되는 작업에서 안정적인 성능을 내며, Maven Central에는 방대한 오픈 소스 라이브러리가 공개되어 있습니다.
처음 시작한다면 Eclipse Temurin 같은 OpenJDK 빌드로 JDK를 설치한 뒤, java 명령으로 소스 파일 하나를 바로 실행하거나 JShell에서 코드를 대화형으로 시험해 보는 것을 권합니다. dev.java의 Learn 항목은 언어를 단계별로 안내하고, Java SE API 문서는 가장 자주 찾게 될 참고서입니다. 프로젝트가 파일 몇 개를 넘어서면 Maven이나 Gradle 같은 빌드 도구와 IDE를 함께 사용합니다. 운영 환경에서는 보통 장기 지원(LTS) 릴리스를 기준으로 삼습니다.
프로그램은 플랫폼에 독립적인 바이트코드로 컴파일되어 어떤 JVM에서든 실행되므로, 같은 빌드 결과물을 여러 운영체제와 CPU 아키텍처에서 쓸 수 있습니다.
가비지 컬렉터가 더 이상 쓰지 않는 객체를 자동으로 해제해 메모리 해제와 관련된 여러 오류를 막고, JIT 컴파일러는 자주 실행되는 코드를 실행 중에 최적화합니다.
클래스, 인터페이스, 제네릭으로 타입 오류를 컴파일 단계에서 잡아내며, 람다, 레코드, 패턴 매칭 같은 비교적 새로운 기능으로 코드를 더 간결하게 쓸 수 있습니다.
표준 라이브러리가 컬렉션, 동시성, 입출력, 네트워크 등을 폭넓게 다루고, Maven Central에서 다양한 오픈 소스 라이브러리를 가져다 쓸 수 있습니다.
adoptium.net에서 Eclipse Temurin 같은 OpenJDK 빌드를 내려받아 설치합니다. Windows에서는 winget, macOS에서는 Homebrew, Linux에서는 배포판 패키지 관리자나 SDKMAN!으로도 설치할 수 있습니다. 특별한 이유가 없다면 LTS 릴리스를 고릅니다.
새 터미널을 열고 실행 환경(java)과 컴파일러(javac)가 모두 버전을 표시하는지 확인합니다. 명령을 찾을 수 없다고 나오면 JDK의 bin 디렉터리를 PATH에 추가하고 JAVA_HOME을 JDK 폴더로 설정합니다.
java -version && javac -version아래 예제를 Hello.java로 저장하고 java 명령으로 바로 실행합니다. JDK가 소스 파일을 컴파일하고 실행하는 과정을 한 번에 처리합니다.
java Hello.javaHello 클래스는 main 메서드를 정의합니다. main은 프로그램이 시작될 때 JVM이 호출하는 진입점이고, System.out.println은 콘솔에 한 줄을 출력합니다. 파일 이름은 public 클래스 이름과 같아야 합니다. 최근 JDK에서는 java Hello.java로 소스 파일 하나를 바로 실행할 수 있으며, 별도로 javac를 실행하지 않아도 메모리에서 컴파일됩니다. 규모가 큰 프로젝트에서는 javac나 빌드 도구로 컴파일한 뒤 클래스를 실행합니다.
Hello.java
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
java Hello.java설치부터 Java 의 핵심 개념까지, 여섯 장으로 차근차근 따라 합니다.
Java 에 관해 묻고, 경험을 나누고, 의견을 주고받는 곳입니다.
아직 토론이 없습니다. 첫 이야기를 시작해 보세요.
댓글 0개
로그인 · 로그인하면 댓글을 남길 수 있습니다.
첫 댓글을 남겨 보세요.