티스토리 뷰

IT

[JAVA] 추상메서드, 추상클래스 (abstract)

엿장구이 2018. 3. 22. 15:36

추상메서드 (abstract method)


추상메서드란 미완성 메서드로서 구현부는 작성하지 않고 선언부만 작성한 매서드이다.

abstract 제어자를 이용해 추상메서드를 선언할 수 있다.

abstract public void example ();


추상클래스 (abstract class)


추상클래스란 미완성 클래스로 추상메서드처럼 abstract 를 이용하여 선언해준다.

클래스가 한개 이상의 추상메서드를 포함하면 무조건 그 클래스는 추상클래스가 된다.

하지만 추상클래스에 추상메서드가 없더라도 abstract class 로 선언하면 추상클래스로 인지된다.

반드시 상속을 통해서만 완성된다.

추상클래스로는 객체 생성을 못한다.


추상클래스를 상속받은 자식 클래스는 무조건 조상 클래스(추상클래스)의 추상메서드를 모두 오버라이딩해야 한다.

하나라도 구현하지 않을 경우 자식 클래스도 추상클래스가 된다.


이렇게 추상클래스는 자식 클래스에 추상메서드 구현을 강요함으로써 프로그램의 표준화 정도를 높인다.



추상 클래스 예제

//추상클래스 생성
abstract class Figure {
    abstract void area(int a, int b);
}
//추상클래스를 상속받는 자식 클래스 생성
class Ractangle extends Figure {
    void area (int a, int b) {
        System.out.println("사각형의 넓이 : " + (a * b));
    }
}
//실행클래스
class Example {
    public static void main(String args[]) {
        Ractangle ract = new Ractangle();
        ract(2, 3);
    }
}

//실행결과
사각형의 넓이 : 6

댓글
최근에 올라온 글
TAG
more