문법의 차이와, 사용 이유의 차이에 대해 이해한다.
Abstract ⊂ 클래스
~> override 재정의. new X (인스턴스화 X)
abstract class A {
... 정의 &
... 구제적 로직 상태 o
}
class Aa extends A {
...() : 구현
...
}
강제 상속 -> 하나만 가능! override 해야만 o
(private X 재정의해야 하니까. )
클래스 일뿐 ...
Minimum 일부 & 기본. Base.
공통 구현. (기본 클래스)
Interface
~> 인스턴스화. New X △
개수 ∞ 다중상속 O
interface I {
... 정의 &
로직, 상태 X
}
class B inplement I {
extends I
...구현
}
특정 메소드가 반드시 존재하도록. 하위클래스가 반드시 메서드 구현해야.
(≠ 샹속 : 상위 클래스 기능 -> 하위)
인터페이스 멤버는 반드시 public. 상속도o
+ Plus 진짜 선언만. 추상멤버만. 구체적 로직, 상태 불가 . 필드 X
따라서,
- 추상 클래스는 상속을 받아 기능을 확장하는데 중점
- 인터페이스는 설계로, 규칙을 정하는데 중점
DI 종속성 주입
... 작성중
'쓸모있는 정보들, by sugenius' 카테고리의 다른 글
Public, Private , Protected ? (0) | 2021.03.28 |
---|