Abstract

해시넷
218.146.11.63 (토론)님의 2021년 7월 9일 (금) 17:53 판 (예제)
이동: 둘러보기, 검색

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 Dog extends Animal{
  void cry(){
    System.out.println("왈왈~!");
  }
}  
public class AbstractExample{
  public static void main(String[]args){
    //Animal a = new Animal(); //추상 클래스는 인트턴스를 생성할 수 없다.
    Cat c = new Cat();
    Dog d = new Dog();
    
    c.cry();
    d.cry();
  }
}

각주

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

참고자료

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

같이 보기