반응형
Abstract Data Type
- 하나의 문법적 요소
- Encapsulation
Runtime - 오버라이딩
Compiletime - 오버로딩
X a = new X();
X b = new Y();
자손의 객체도 가리킬 수 있다.
b.method() 하면 X가 아니라 Y에 있는 매소드가 실행됨.
Y c = new X(); (ㄴㄴ)
하나이상의 abstract 매소드가 있으면 abstract클래스여야만 함
abstarct클래스여도 abstract 매소드가 없어도 됨
폴리몰피즘 룰이 동작하므로, 자손의 instance를 가리킬 수 있음.
X a = new Y();
a.method();
method가 Y에 없으면 X에 있는거 실행
아예 없으면 컴파일에러
인터페이스는 모든 매소드가 abstract (abstarct 는 걍 메소드도 가질 수 있음)
instance 가리킬 수 없음
상수는 허용한다
제약조건이 없으면 인터페이스 써라
상위 타입일수록 더 범용적
제일앞에께 변경되었을때 변경이 어디까지 영향을 미치는지 표시
반응형
'Design Architecture > Design Pattern' 카테고리의 다른 글
7강 Template Method (1) | 2021.08.29 |
---|---|
6강 Observer Pattern (0) | 2021.08.29 |
5강 Strategy Pattern (0) | 2021.08.29 |
4강 GRASP Principle (0) | 2021.08.28 |
3강 SOLID Principle (0) | 2021.08.28 |