Java - 상속 1

Jean·2025년 6월 20일
0

풀스택 교육

목록 보기
1/28

✅ 제어자 (Modifier)

📌 접근 제어자 (Access Modifier)

제어자설명사용 가능 대상
public어디서나 접근 가능클래스, 생성자, 메서드, 멤버 변수
protected같은 패키지 + 다른 패키지의 자식 클래스에서 접근 가능생성자, 메서드, 멤버 변수
(default)같은 패키지 내에서만 접근 가능클래스, 생성자, 메서드, 멤버 변수
private같은 클래스 내에서만 접근 가능생성자, 메서드, 멤버 변수

클래스에는 public 또는 default만 사용 가능


📌 활용 제어자 (Usage Modifier)

제어자설명
final수정 불가 (변수: 값 변경 불가, 메서드: 오버라이딩 불가, 클래스: 상속 불가)
abstract미완성 상태 (메서드: 구현 없음, 클래스: 추상 메서드 포함)
static클래스 단위로 공유 (인스턴스 없이 접근 가능)

🔒 캡슐화 (Encapsulation)

  • 객체의 속성과 메서드를 하나로 묶고, 외부에서 직접 접근하지 못하도록 차단
  • 일반적으로 멤버 변수는 private, 접근은 getter/setter 메서드 사용

🔁 다형성 (Polymorphism) | 여러 형태

  • 하나의 참조 변수로 여러 타입의 객체를 참조할 수 있음
  • 동일한 메서드 호출 → 실제 동작은 객체에 따라 다르게 실행됨 (오버라이딩)
  • 코드의 유연성과 재사용성 증가, 중복 감소

📎 변수 종류

  • 기본형 변수: byte, short, int, long, float, boolean, char
  • 참조형 변수: 객체를 참조 (모든 클래스 타입)

참조형 변수는 객체의 타입에 따라 접근 가능한 멤버(메서드/변수)가 결정됨


🧩 추상화 (Abstraction) | 미완성

📌 추상 메서드

  • 선언부(시그니쳐)만 존재하고, 구현부(코드블록)가 없음
  • 자식 클래스에서 반드시 오버라이딩해야 함

📌 추상 클래스

  • 하나 이상의 추상 메서드를 포함하는 클래스
  • 객체 생성 불가, 상속 전용 템플릿 클래스

♻️ 생성자 접근 제어 & 싱글톤 패턴

📌 생성자 접근 제어

  • private 생성자 → 외부에서 인스턴스 생성 차단
  • 외부에서 접근 허용하려면 public 또는 protected 사용

📌 싱글톤 패턴

  • 클래스 인스턴스를 하나만 생성하도록 제한
  • 구현 방법:
    1. 생성자를 private으로 설정
    2. static 메서드를 통해 객체 반환 (getInstance())

⛓ 상속 제어

  • final class: 상속 불가
  • final method: 오버라이딩 불가
  • protected constructor: 자식 클래스에서만 생성자 호출 가능
profile
햇내기 개발자 지망생

0개의 댓글