Unity Study

추상클래스 Abstract 정의하기

오늘도즐겨 2024. 11. 19. 02:45

추상클래스의 사용방법이 조금 의아 한 정도?

 

??? 실제 강의에서 추상클래스를 구현하고, 내부에 추상메서드가 아닌 일반 Public 메서드만을 사용하였음

내가 아는 추상메서드는 상속받은 클래스에서 무조건 필수적으로

내부메서드를 Override 해서 구현해야한다고 알고있었음

 

여기서 의문점?

인터페이스를 두고 굳이????? 추상클래스를 사용하는 이유는?

 

강제구현할 메서드와 무시할 메서드를 모두 한 클래스를 상속받아 사용 할 수 있다는 장점!!

단 클래스의 내부 메서드들은 모두 구현을 포함하고 있음

 

추상 클래스 vs 인터페이스

추상 클래스

일반 메서드와 추상 메서드를 모두 포함 가능.

강제 구현이 필요한 메서드는 추상 메서드로 선언.

일부 구현을 제공하면서 상속받는 클래스의 개발 부담을 줄일 수 있음.

인터페이스

모든 메서드가 기본적으로 구현이 없는 추상 메서드.

모든 메서드를 구현해야 함.

결론

추상 클래스 내부에 추상 메서드가 없고, 모두 일반 메서드라면 상속받은 클래스는 해당 메서드를 필수로 구현하지 않아도 됩니다.

특정 메서드를 반드시 구현해야 한다면, 이를 추상 메서드로 선언하세요.