검수요청.png검수요청.png

Abstract

위키원
Asadal (토론 | 기여)님의 2021년 7월 10일 (토) 09:19 판
이동: 둘러보기, 검색

Abstract(추상)라는 것은 상속을 강제하는 일종의 규제라고 볼 수 있다. 즉, 추상클래스(abstract class)나 추상메소드(abstract method)를 사용하기 위해서는 반드시 상속해서 사용하도록 강제하는 것이 'abstract'이다.[1]

개요

abstract은 한국어로는 추상으로 번역된다. 추상메소드(abstract method)는 자식클래스(class)에서 반드시 오버라이딩(overriding)해야만 사용할 수 있는 메소드를 의미한다. 자바에서는 이러한 하나 이상의 추상메소드(method)를 포함하는 클래스(class)를 가리켜 추상클래스(abstract class)라고 한다.

추상 메소드(abstract method)

문법

사용 목적

추상 클래스(abstract class)

문법

사용 목적

예제

abstract class Animal {
  abstract void cry();
}
class Cat extends Animal{
  void cry(){
    System.out.println("야옹~!");
  }
}
class Bird extends Animal{
  void cry(){
    System.out.println("짹짹~!");
  }
}  
public class AbstractExample{
  public static void main(String[]args){
    //Animal a = new Animal(); //추상 클래스는 인트턴스를 생성할 수 없다.
    Cat c = new Cat();
    Bird d = new Bird();
    
    c.cry();
    d.cry();
  }
}

실행 결과

야옹~!
짹짹~!

각주

  1. abstract〉, 《생활코딩》, 2014-01-27

참고자료

  • abstract〉, 《생활코딩》, 2014-01-27

같이 보기


  검수요청.png검수요청.png 이 Abstract 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.