foxpacking

Programming Lessons

Java 언어 Korean

Java 총 정리[74. abstract class]

abstract class

이전 걸음에서 추상화에 대한 기본적인 개념을 보고 꼭 알아두어야 하는 내용들을 공부를 했습니다. 추상화에 대한 내용이 모두 한 것이 아니지만 이번 걸음과 다음 걸음을 통해서 같이 공부를 한다면 추상화를 완벽하게 이해를 하실 수 있습니다.

이번 걸음에서는 abstract class에 대해서 배워 보도록 하겠습니다. 추상화를 할 수 있는 class에 첫 번째인 abstract class를 이번 걸음에서 같이 공부를 하신다면 abstract class를 완벽하게 이해를 하실 수 있습니다.

abstract class의 정의를 다시 한번 자세히 설명을 드리고 예제 소스를 통해서 Java에서 어떻게 사용이 되는지 확인을 하실 수 있습니다. 이번 걸음에서 abstract class의 내용과 활용에 대해서 확실히 이해를 하실 수 있습니다.

abstract class 란?

abstractClass메인사진

abstract class는 일반 class의 속성이나 기능을 모두 똑같이 가질 수 있습니다. 하지만 abstract class는 abstract method를 가지고 있을 수 있습니다. 꼭 abstract method를 가지고 있어야 하는 것은 아니지만 그렇게 사용을 하려면 일반 class를 사용을 하는 것이 낫습니다. 마지막으로 abstract class를 상속을 받는 class는 무조건 abstract method를 Overriding을 해줘야 합니다. 일반 method는 Orverriding은 선택 사항입니다.

abstract class 예제

    
abstract class A{
    멤버변수 or 일반 메소드 선언도 가능합니다.
    // 추상 메소드
    abstract void abc();
}
Class B extends A{
    void abc(){ // 부모 추상화 클래스의 메소드를 재정의를 필수로 해야 합니다.
        System.out.println(“abc”);
    }
}

public class Test{
   public static void main(String[] args){
      A a = new A(); // abstract class는 객체를 만들 수 없습니다.
      A a1 = new B();// 가능
      B b = new B(); // 가능
   }
}
    

위의 예제 소스를 참고해서 abstract class를 상속을 받아서 사용을 할 수 있습니다. abstract class도 class이기 때문에 class B는 다른 class를 상속을 받을 수 없습니다.

Dolphin

About Author

Leave a comment

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

You may also like

Korean Programming 기초

IT 개발자 VS 프로축구선수 비교?

IT 개발자와 프로축구선수의 같은 점과 다른 점? 프로그래밍 공부를 하시면서 개발자로 취업을 하려고 하는데 과연 취업을 할 수 있을까? IT
Korean 클라우드

AWS 로그인 불가능, AWS고객 센터 이메일 문의 결과는?

AWS 고객센터 이메일 문의 솔직후기 AWS를 사용하기 위해 로그인을 하는 경우 이메일로 코드 번호를 보내지만 이메일로 받을 수 없는 상황이거나