[JAVA] 48. 추상클래스 & 인터페이스 (1)추상클래스

서회정's avatar
Feb 17, 2025
[JAVA] 48. 추상클래스 & 인터페이스 (1)추상클래스
Contents
1. 예제

💡
abstract
추상 클래스 (abstract class)
  • 하나 이상의 추상 메소드를 포함하는 클래스를 말함.
  • 반드시 사용되어야 하는 메소드를 추상 클래스에 추상 메소드로 선언해 놓으면 이 클래스를 상속받는 모든 클래스에서는 이 추상 메소드를 반드시 재정의 해야한다.
추상 메서드 (abstract method)
  • 자식 클래스에서 반드시 오버라이딩해야만 사용할 수 있는 메서드를 말함.
  • 선언부만 존재하며, 구현부는 작성되어있지 않음.
  • abstract 반환타입 메서드이름();

1. 예제

코드

package ex07.ch01; abstract class 판사 { //abstract => 추상화. 메모리에 띄울 수 없음. 강제함. //public abstract void 심문(); //바디 안만들거면 이 문법 사용하면됨. 어짜피 타고 내려가기만하면 되서 내용 필요없음. public void 심문() { System.out.println("판사는 심문한다."); } //내용이 같은 경우에는 해당하는 문법으로 사용 가능. } class 왕비 extends 판사 { } class 왕 extends 판사 { } abstract class 증인 { public abstract void 대답(); } class 모자장수 extends 증인 { public void 대답() { System.out.println("모자장수는 대답한다."); } } class 토끼 extends 증인 { public void 대답() { System.out.println("토끼는 대답한다."); } } class Game { public void 심문(판사 u) { u.심문(); } public void 대답(증인 u) { u.대답(); } } public class AliceApp { public static void main(String[] args) { Game g = new Game(); 증인 s = new 모자장수(); g.대답(s); 판사 ss = new 왕(); g.심문(ss); } }

결과

notion image
Share article

clubnerdy