JAVA 최종 수정일 2026-06-18 17:47 조회수 5
대시보드

JAVA

기본 정보

  • 이름: Java
  • 분류: 객체지향 프로그래밍 언어
  • 최초 공개: 1995년
  • 개발사: Sun Microsystems (현재 Oracle)
  • 최신 LTS: Java 21
  • 주요 용도: 백엔드 개발, 웹 애플리케이션, Android(과거), 금융 시스템, 엔터프라이즈 시스템
  • 관련 주제: #Java #백엔드 #객체지향 #JVM

개요

Java는 Sun Microsystems에서 개발한 객체지향 프로그래밍 언어로, 현재는 Oracle에서 관리하고 있다.

"Write Once, Run Anywhere(WORA)"라는 철학을 기반으로, JVM(Java Virtual Machine)이 설치된 환경이라면 운영체제에 관계없이 동일한 프로그램을 실행할 수 있다.

현재는 대규모 기업 시스템, 금융권, 공공기관, 웹 서비스, 클라우드 환경 등에서 널리 사용되고 있다.


주요 특징

  • 객체지향 프로그래밍(OOP)
  • 플랫폼 독립성
  • JVM 기반 실행
  • 자동 메모리 관리(Garbage Collection)
  • 강력한 타입 검사
  • 높은 안정성과 확장성
  • 풍부한 라이브러리 지원

실행 구조

Java Source (.java)

↓

Compiler (javac)

↓

ByteCode (.class)

↓

JVM

↓

운영체제 (Windows / Linux / macOS)

Hello World

public class Main {

    public static void main(String[] args){

        System.out.println("Hello Java");

    }

}

변수

String name = "구름";

int age = 30;

double score = 99.5;

boolean admin = true;

데이터 타입

기본형(Primitive)

  • byte
  • short
  • int
  • long
  • float
  • double
  • char
  • boolean

참조형(Reference)

  • String
  • Array
  • Class
  • Object
  • List
  • Map

조건문

if(age >= 20){

    System.out.println("성인");

}else{

    System.out.println("미성년자");

}

반복문

for(int i=0;i<5;i++){

    System.out.println(i);

}

메서드

public static int add(int a,int b){

    return a+b;

}

클래스

public class User{

    String name;

    int age;

}

Java는 클래스를 중심으로 프로그램을 구성한다.


객체 생성

User user = new User();

user.name = "구름";

생성자

public User(String name){

    this.name = name;

}

객체 생성 시 초기값을 설정할 수 있다.


상속

class Animal{

}

class Dog extends Animal{

}

코드 재사용과 확장을 위한 객체지향 핵심 기능이다.


인터페이스

interface Move{

    void run();

}

다형성을 구현하는 데 널리 사용된다.


컬렉션

List

List<String> list = new ArrayList<>();

list.add("PHP");

Map

Map<String,Integer> map = new HashMap<>();

map.put("age",30);

예외 처리

try{

    int a = 10/0;

}catch(Exception e){

    e.printStackTrace();

}

예외(Exception)를 처리하여 프로그램의 비정상 종료를 방지한다.


파일 읽기

Files.readString(Path.of("test.txt"));

JDBC

Java에서 데이터베이스 연결 시 사용하는 표준 API이다.

Connection conn =
DriverManager.getConnection(url,user,password);

Spring Framework

Java에서 가장 많이 사용되는 프레임워크이다.

주요 기능

  • DI(의존성 주입)
  • IoC
  • MVC
  • REST API
  • Security
  • JPA

Spring Boot

Spring 기반의 웹 개발을 간편하게 지원하는 프레임워크이다.

특징

  • 내장 Tomcat
  • 자동 설정
  • REST API 개발
  • Gradle/Maven 지원
  • Microservice 개발

빌드 도구

  • Maven
  • Gradle
  • Ant

현재는 Gradle 사용 비중이 증가하고 있다.


Java와 함께 사용하는 기술


주요 활용 분야

  • 웹 서비스
  • 금융 시스템
  • ERP
  • 공공기관 시스템
  • 전자정부 프레임워크
  • REST API
  • Microservice
  • Android 앱 개발(과거)

장점

  • 높은 안정성
  • 객체지향 설계
  • 운영체제 독립성
  • 풍부한 라이브러리
  • 대규모 프로젝트에 적합
  • 기업 환경에서 활용도가 높음

단점

  • 문법이 비교적 길다
  • 메모리 사용량이 많은 편
  • 초기 학습 난이도가 다소 높음
  • 간단한 프로그램도 코드량이 많을 수 있음

실무 메모

실무에서는 다음과 같은 방식이 권장된다.

  • Java LTS 버전 사용
  • Spring Boot 기반 개발
  • Gradle 사용
  • Lombok 활용
  • JPA 또는 MyBatis 사용
  • REST API 중심 설계
  • DTO와 Entity 분리
  • Exception Handler 공통 처리
  • 로그는 SLF4J + Logback 사용
  • 단위 테스트(JUnit) 작성

관련 문서


출처

  • Oracle Java 공식 홈페이지
  • Oracle Java Documentation
  • 위키백과 「Java」