다형성1-2)instance of 연산자/추상클래스/
728x90
728x90
SMALL
1. instance of 연산자
정의 : 현재 참조형 변수가 어떤 클래스 형의 객체 주소를 참조하고 있는지 확인 할 때 사용합니다. 타입이 맞으면 true를 반환하고, 타입이 맞지 않으면 false를 반환합니다.
표현법)
if (레퍼런스 instance of 클래스 타입) {
} // true 일때 처리할 내용
예시)
Actor가 부모 클래스 그 자식 클래스로 MovieActor,PlayActor,DramaActor 클래스가 있습니다. 여기서 다음 조건에 따라 객체배열을 10개 만들고 그 인데스마다 다른 객체를 생성하였습니다.
그런다음 instance of 연산자를 통해서 분류를 하고 count로 하나씩 세어서 그 수를 출력합니다.
다음 처럼 출력이 됩니다.
2. 추상 클래스
2_1)추상클래스
몸체 없는 메소드를 포함한 클래스입니다. 추상 클래스이면 클래스 선언부에서 abstract를 사용하여 정의합니다.
[접근제한자] abstract class 클래스명{}
2_2)추상메소드
몸체 없는 메소드입니다. 추상 메소드의 선언부에 abstract 키워드를 사용하여야 합니다. 상속시 반드시 구현해야 하는, 오버라이딩이 강제화 되는 메소드입니다.
[접근제한자]abstract 반환형 메소드명 (자료형 변수명);
특징
1. 미완성 클래스(abstract 키워드 사용) 자체적으로 객체 생성 불가합니다. → 반드시 상속하여 객체 생성을 해야합니다.
2. abstract 메소드가 포함된 클래스는 반드시 abstract 클래스 abstract 메소드가 없어도 abstract 클래스 선언 가능합니다.
3. 클래스 내에 일반 변수, 메소드 포함 가능합니다.
4. 객체 생성은 안되지만 참조형 변수 타입으로는 사용 가능합니다.
다음 시간에는 인터페이스 정의와 특징 그리고 추상메소드와 인터페이스를 비교하겠습니다.
728x90
300x250
LIST
'자바-자린이의 도전기' 카테고리의 다른 글
다형성1-4)추상클래스 예제 (0) | 2022.04.29 |
---|---|
다형성1-3)인터페이스/추상클래스와 인터페이스 비교 (0) | 2022.04.27 |
다형성1-1)업캐스팅/다운캐스팅 (0) | 2022.04.18 |
상속1-3)오버로딩과 오버라이딩 비교/toString오버라이딩 (0) | 2022.04.10 |
상속1-2)super./super()/오버라이딩 (0) | 2022.04.09 |
댓글
이 글 공유하기
다른 글
-
다형성1-4)추상클래스 예제
다형성1-4)추상클래스 예제
2022.04.29 -
다형성1-3)인터페이스/추상클래스와 인터페이스 비교
다형성1-3)인터페이스/추상클래스와 인터페이스 비교
2022.04.27 -
다형성1-1)업캐스팅/다운캐스팅
다형성1-1)업캐스팅/다운캐스팅
2022.04.18 -
상속1-3)오버로딩과 오버라이딩 비교/toString오버라이딩
상속1-3)오버로딩과 오버라이딩 비교/toString오버라이딩
2022.04.10