상속

    Java] 추상클래스와 인터페이스

    추상클래스와 인터페이스 이 두가지를 함께 물어본다면, 상속과 다형성에 대해서 묻는 것이다. (다형성이라 함은 간단하게 말한다면, 상속을 통해 기능을 확장하거나 변경하는 것을 의미. 즉, 하나의 메서드가 다양한 방법으로 동작하는 것) 클래스는 일반클래스와 추상클래스로 나뉘는데, 추상클래스는 추상매서드가 하나 이상 포함되거나 abstract로 정의된 클래스를 말한다. 인터페이스는 모든 메서드가 추상메서드로 이루어져 있다. (단, Java 8이후에는 default 키워드로 일반 메서드의 구현도 가능하게 됐다.) 추상클래스를 상속받는 클래스 또는, 인터페이스를 구현하는 클래스는 그 안에 있는 '추상메서드'를 구현하도록 강제한다. 어떻게 보면 의미가 비슷하다고 느낄 수 있으나, 추상클래스와 인터페이..