인프런 커뮤니티 질문&답변

최은희님의 프로필 이미지
최은희

작성한 질문수

나도코딩의 자바 기본편 - 풀코스 (20시간)

인터페이스 (후반전)

안녕하세요 인터페이스에서 궁금한게 하나더 생겨서 질문드립니다.

작성

·

226

0

 항상 답변해주셔서 감사합니다. 너무 큰 도움이 됩니다.

저의 질문은 아래의 코드에서

package camera2;

import reporter.*;
import detector.*;

public class FactoryCam extends Camera implements Detectable, Reportable{
	
	private Detectable detector;
	
	private Reportable reporter;

	public void setDetector(Detectable detector) {
		this.detector = detector;
	}

	public void setReporter(Reportable reporter) {
		this.reporter = reporter;
	}

	public void showMainFeature() {
		System.out.println("화재 감지");
	}
//	
//	public void detect() {
//		System.out.println("화재를 감지합니다.");
//		
//	}
//	
//	public void report() {
//		System.out.println("화재 신고를 진행합니다.");
//	}
//	
	
	@Override
	public void detect() {
		detector.detect();
	}
	
	@Override
	public void report() {
		reporter.report();
	}
	
	
	

}

 

제가 궁금한 부분은


	private Detectable detector;
	
	private Reportable reporter;

	public void setDetector(Detectable detector) {
		this.detector = detector;
	}

	public void setReporter(Reportable reporter) {
		this.reporter = reporter;
	}

이 부분인데요.

 

해당 코드는 implements Detectable, Reportable해줌에 대한 여부와 상관없이, import 패키지를 해줌으로 가능한 부분인건가요?

답변 1

0

나도코딩님의 프로필 이미지
나도코딩
지식공유자

안녕하세요?

네, 맞습니다 🙌
Detectable 또는 Reportable 인터페이스를 굳이 구현하지 않아도 Detectable, Reportable 을 클래스 내에서 사용하는 것은 가능합니다 😊 말씀하신 것처럼 import 는 필요하구요!

감사합니다.

최은희님의 프로필 이미지
최은희

작성한 질문수

질문하기