[Java] 추상 메소드/추상 클래스

소이뎁·2023년 10월 17일
0

Java

목록 보기
17/26
post-thumbnail

📍 추상 메소드 & 추상 클래스

  • 선언 시 abstract 키워드를 사용한다.
  • 주로 클래스의 기본형(청사진)을 만들기 위해 사용한다.

1) 추상 메소드

  • 추상 메소드는 선언만 되어있고 구현은 되어있지 않은 메소드이다.
  • 반드시 하위 클래스에서 오버라이딩을 통해 추상 메소드를 구현해야 한다.

2) 추상 클래스

  • 추상 클래스는 하나 이상의 추상 메소드를 포함하거나 abstract 키워드로 선언된 클래스이다.
  • 인스턴스를 생성할 수 없다.
  • 추상 메소드가 존재하지 않아도 추상 클래스로 선언할 수 있지만, 추상 메소드가 하나라도 존재한다면 반드시 추상 클래스로 선언해야 한다.
  • 자식 클래스가 부모 클래스의 추상 메소드를 구현할 수 없는 경우, 자식 클래스를 추상 클래스로 만든 후 다음 단계의 자식 클래스에서 구현해야 한다.

3) 추상 메소드, 추상 클래스 예시

// 🟢 Animal Class
package lesson05.ex01;

public abstract class Animal {
	
	public abstract void cry();

}
// 🟢 Cat Class
package lesson05.ex01;

public class Cat extends Animal{

	@Override
	public void cry() {
		System.out.println("야옹");
	}

}
// 🟢 AnimalTest Class(Main Class)
package lesson05.ex01;

public class AnimalTest {

	public static void main(String[] args) {
		Cat cat = new Cat();
		cat.cry();
	}

}

References

🔗 https://www.geeksforgeeks.org/abstract-methods-in-java-with-examples
🔗 https://www.geeksforgeeks.org/abstract-classes-in-java

0개의 댓글