오늘 ONEUL
오늘의 개발
오늘 ONEUL
전체 방문자
오늘
어제
  • 오늘의 개발 (248)
    • 📝 TIL (121)
    • 💡 Projects (6)
      • 드로잉 게임 [눈치 코치 캐치!] (4)
      • 익명고민상담소 [대나무숲] (2)
    • 🌎 Web (47)
      • Spring (3)
      • Java (14)
      • JavaScript (16)
      • CSS (10)
      • HTML (4)
    • 📚 Database (7)
    • 👾 Trouble Shooting (3)
    • 📊 Algorithm&SQL (39)
    • 😺 Git (1)
    • 📖 Books (7)
      • 자바 객체 지향의 원리와 이해 (7)
    • 📁 ETC (2)
    • 되돌아보기 (15)

블로그 메뉴

  • 😺 Github
  • 🍀 NAVER Blog

인기 글

최근 댓글

최근 글

태그

  • 알고리즘
  • 프로그래머스
  • JavaScript
  • Til
  • Java
  • MySQL
  • 자바스크립트
  • 항해99
  • 자바
  • Algorithm

티스토리

hELLO · Designed By 정상우.
오늘 ONEUL

오늘의 개발

[Java] 추상 클래스
🌎 Web/Java

[Java] 추상 클래스

2022. 12. 7. 11:58

07 상속

07-3 추상 클래스

추상 클래스란?

  • 여러 클래스의 공통된 특성(필드, 메소드)를 추출해서 선언한 것을 추상클래스라고 한다.
  • 추상 클래스와 실체 클래스는 부모, 자식 클래스로서 상속관계를 가진다.

 

추상 클래스의 용도

  • 공통된 필드와 메소드의 이름을 통일할 목적
  • 실체 클래스를 작성할 때 시간 절약
  • 추상 클래스는 실체 클래스의 설계 규격 → 객체 생성용 X

 

추상 클래스 선언

  • abstract 키워드를 이용하여 선언한다.
  • new 연산자로 객체를 생성할 수 없고, 상속을 통해 자식 클래스만 만들 수 있다.
public abstract class 클래스 {
	// 필드
	// 생성자 -> 자식 객체가 생성될때 super(...)로 호출
	// 메소드
}

 

추상 메소드와 재정의

  • 메소드 선언만 통일하고 실행 내용은 실체 클래스마다 달라야 하는 경우, 실행 내용을 채우도록 강제하려면 추상 메소드를 사용한다.
  • abstract 키워드로 선언되고 중괄호가 없다.
  • 하위 클래스는 반드시 재정의해서 실행 내용을 채워야 한다.
public abstract class Animal {
	public abstract void sound();
}

 

 

마무리 핵심 키워드

  • 추상 클래스: 클래스들의 공통적인 필드와 메소드를 추출해서 선언한 클래스를 말한다.
  • 추상 메소드: 추상 클래스에서만 선언할 수 있고, 메소드의 선언부만 있는 메소드를 말한다. 추상 메소드는 자식 클래스에서 재정의되어 실행 내용을 결정해야 한다.

 

 

 

※ 이 내용은 책 [혼자 공부하는 자바]를 보고 정리한 내용입니다.

 

저작자표시 비영리 변경금지 (새창열림)

'🌎 Web > Java' 카테고리의 다른 글

[Java] 타입 변환과 다형성  (0) 2022.12.07
[Java] 상속(inheritance)  (0) 2022.12.05
[Java] 패키지와 접근 제한자  (0) 2022.11.30
[Java] 인스턴스 멤버와 정적 멤버, 싱글톤, final  (0) 2022.11.29
[Java] 메소드(method)  (2) 2022.11.28
    오늘 ONEUL
    오늘 ONEUL
    Backend Engineer ㅣ 어제보다 나은 오늘, 재밌는 건 오늘부터!

    티스토리툴바