##Chapter7 객체지향 프로그래밍2
###5. 다형성(polymorphism)
####5.1. 다형성이란?
조상클래스 타입의 참조변수로 자손클래스의 인스턴스를 참조할 수 있도록 하였다.
CaptionTv c = new CaptionTv();
Tv t = new CaptionTv();
CaptionTv c = new Tv(); //컴파일 에러 발생
####5.2. 참조변수의 형변환
자손 -> 조상 (Up-casting) : 생략가능.
자손 <- 조상 (Down-casting) : 생락불가.
Car car = null;
FireEngine fe = new FireEngine();
FireEngine fe2 = null;
car = fe; //car = (Car)fe; 형변환 생략.
fe2 = (FireEngine)car; //생략불가.
####5.3. instanceof연산자
어떤 타입에 대한 instanceof연산의 결과가 true라는 것은 검사한 타입으로 형변환이 가능하다는 것을 뜻한다.
####5.6. 여러 종류의 객체를 하나의 배열로 다루기
Product p1 = new Tv();
Product p2 = new Computer();
Product타입의 참조변수 배열로 처리
Product p[] = new Product[2];
p[0] = new Tv();
p[1] = new Computer();
Vector클래스 사용
Vector item = new Vector();
<br>
###6. 추상클래스(abstract class)
abstract class 클래스이름 {
//...
}
<br>
###7. 인터페이스(interface)
interface 인터페이스이름 {
(public static final) 타입 상수이름 = 값;
(public abstract) 메서드이름(매개변수목록);
}
####7.4. 인터페이스의 구현
구현한다는 의미의 키워드 'implements' 사용.
'CDG 3기 > JAVA의정석' 카테고리의 다른 글
스터디 실습 문제 1 (0) | 2015.09.21 |
---|---|
스터디 이론 문제 (0) | 2015.09.21 |
ch7 객체지향프로그래밍2-1 (0) | 2015.09.21 |
ch6 객체지향프로그래밍1-2 (0) | 2015.09.21 |
ch6 객체지향프로그래밍1-1 (0) | 2015.09.21 |