[Lecture/Java] 01강 - Java와 객체지향 프로그래밍

김찬미·2025년 5월 27일

📘 Java와 객체지향 프로그래밍

  • Java 언어 개요
  • JDK와 이클립스 설치
  • Java 소스의 구성
  • 객체지향 프로그래밍

✅ Java 언어 개요

🔍 Java란?

1996년, 미국 Sun Microsystems제임스 고슬링에 의해 발표된
플랫폼 독립적인 객체지향 프로그래밍 언어


🔹 Java의 주요 특징

  1. 플랫폼 독립성
    → JVM 위에서 실행되므로 운영체제에 관계없이 동일한 코드 실행 가능

  2. 객체지향 언어
    → 클래스 기반 구조로 캡슐화, 상속, 다형성을 지원

  3. 엄격한 자료형 검사
    → 컴파일 시점에서 자료형 오류를 철저히 검사

  4. 강력한 예외 처리
    try-catch 구문을 통한 안정적인 예외 제어

  5. 멀티스레딩 지원
    → 하나의 프로그램에서 여러 작업을 동시에 수행 가능

  6. 분산 처리 기능
    → TCP/IP, HTTP 등의 네트워크 라이브러리 지원

  7. 동적 클래스 로딩
    → 실행 중 필요한 클래스를 메모리에 동적으로 로드

  8. 아키텍처 중립성
    → 바이트코드는 JVM이 있는 환경이라면 어디서나 실행 가능

  9. 다양한 응용 프로그램 개발 가능
    → 웹, 모바일, 데스크탑, 서버 등 다양한 플랫폼 대응


🧱 Java 플랫폼 구성

Java 프로그램의 개발과 실행을 위한 환경

🔸 Java VM (JVM)

  • Java 프로그램의 실행 엔진
  • 메모리 관리 및 실행 환경 제공
  • Garbage Collection(자동 메모리 정리) 수행

🔸 Java API

  • 클래스 및 인터페이스의 라이브러리 모음
  • 패키지 단위로 기능별 제공

📌 사용자는 운영체제에 맞는 Java 플랫폼 설치 필요


🔁 Java 프로그램의 실행 과정

🔸 파일 구조

파일 종류확장자설명
소스 코드.java개발자가 작성한 코드
바이트코드.class컴파일 결과로 생성되는 실행 파일

💡 바이트코드: JVM이 해석할 수 있는 중간 코드 형태


✅ JDK와 이클립스 설치

🔹 JDK (Java Development Kit)

Java 플랫폼개발 도구(컴파일러, 디버거 등) 의 묶음

  • Oracle 공식 홈페이지 또는 OpenJDK에서 다운로드 가능
  • 운영체제에 맞는 버전 선택 필수

🔁 Java 애플리케이션의 작성과 실행

📌 예제 실행 흐름

d:\java>javac HelloApplication.java   # ① 컴파일
d:\java>java HelloApplication         # ② 실행
Hello, Java Application!

① Java 소스 파일 생성

  • 확장자는 .java
  • public class하나만 허용
  • 파일 이름 = public 클래스 이름
// HelloApplication.java
public class HelloApplication {
    public static void main(String[] args) {
        System.out.println("Hello, Java Application!");
    }
}

② 컴파일 (javac)

  • .java.class 변환
javac HelloApplication.java

HelloApplication.class 생성됨


③ 실행 (java)

  • main() 메서드가 포함된 클래스를 실행
java HelloApplication

⚠ 클래스명만 입력, .class 확장자 생략


🔎 구조 요약 표

단계명령어설명
작성.java 파일 생성Java 소스 코드 작성
컴파일javac Hello.java바이트코드(.class) 생성
실행java HelloJVM이 바이트코드 실행

Java 애플릿

Java VM을 탑재한 웹 브라우저에서 실행되는 Java 프로그램

🔁 동작 방식

  1. Java 애플릿이 포함된 HTML 문서를 클라이언트가 요청
  2. Java 애플릿 프로그램 코드가 사용자의 클라이언트로 전송
    → 임시로 저장된 후 사용자의 웹 브라우저에서 실행
  3. HTML 문서에 애플릿 프로그램을 포함시키기 위해 <APPLET> 태그가 사용됨

🔸HTML 문서 예시

<HTML>
<HEAD> <TITLE>Java Applet</TITLE> </HEAD>
<BODY>
	<APPLET CODE="HelloApplet.class" WIDTH=200 HEIGHT=100>
    </APPLET>
</BODY>
</HTML>

✅ Java 소스 코드의 구성

🔹 클래스 정의 및 main 메소드

  • public class 이름 = 파일명 (A.javapublic class A)
package com;

public class Main {
    public static void main(String[] args) {
        // 실행 진입점
    }
}

✅ 객체지향 프로그래밍

🔹 클래스(Class)

객체를 만들기 위한 설계도 또는

📌 클래스의 구성 요소

  • 필드 (Field) : 객체의 속성 (데이터)
  • 메소드 (Method) : 객체의 동작 (기능)

하나의 클래스는 여러 객체의 인스턴스화가 가능


🔸 Java에서의 클래스 역할

  • 데이터와 기능을 하나로 캡슐화
  • 클래스를 통해 객체(인스턴스)를 생성
  • 객체 간의 상호작용으로 프로그램 동작

profile
백엔드 지망 학부생

0개의 댓글