<aside> <img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/94dbaed9-349c-449d-bc43-25de3ae5a780/SpartaIconScale9.png" alt="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/94dbaed9-349c-449d-bc43-25de3ae5a780/SpartaIconScale9.png" width="40px" /> 수업 목표

<aside> <img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/393cd135-1603-4797-8fa6-42abcfedd782/SpartaIconS24.png" alt="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/393cd135-1603-4797-8fa6-42abcfedd782/SpartaIconS24.png" width="40px" />

목차

</aside>

<aside> <img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/11965e36-5cde-4d10-b470-06dfbe247327/scc캐릭터_아하_280x280.png" alt="https://prod-files-secure.s3.us-west-2.amazonaws.com/83c75a39-3aba-4ba4-a792-7aefe4b07895/11965e36-5cde-4d10-b470-06dfbe247327/scc캐릭터_아하_280x280.png" width="40px" /> 필수 프로그램 설치

프로그램 설치가이드를 따라 천천히 설치를 진행해주세요.

✅ OpenJDK 8버전 이상

✅ IntelliJ (Community)

✅ Google Chrome

</aside>


학습 키워드 점검


제네릭(Generic)이란?

<aside> 📚

제네릭이 무엇인지 학습해 봅시다.

<aside> 1️⃣

코드 재사용성

<aside> 2️⃣

타입 안정성

</aside>


제네릭이 없는 경우

<aside> 📚

Box 클래스를 예시로 아래의 두 케이스를 살펴봅시다.

<aside> 1️⃣

제네릭이 없는 경우 재사용 불가

</aside>

<aside> 2️⃣

제네릭이 없는 경우 타입 안정성 보장 불가

</aside>

</aside>

<aside> ⚠️

제네릭이 없는 Box 클래스 - 재사용 불가

public class Box {
    private Integer item; // ⚠️ Integer 타입으로 고정

    public Box(Integer item) { // ⚠️ Integer 타입으로 고정
        this.item = item;
    }

    public Integer getItem() {
        return this.item;
    }
}

public class Main {
    public static void main(String[] args) {
        // ✅ Integer 타입 박스
        Box box1 = new Box(100);

        // ❌ String 타입을 저장하려면 새로운 클래스를 만들어야 함
        Box box2 = new Box("ABC"); 

    }
}

</aside>