[안드로이드스튜디오_문화][콜백함수 && 리스너]
리스너
정의 :
리스너 사용 방법
1. 익명 클래스 개념을 활용해서 객체에 담지 않고, 리스너를 사용할 클래스의 파라미터터에서 직접 정의해서 넘기는 방법.
-> 리스너를 여러번 사용 할 때
2. 리스너를 사용할 클래스에서 리스너를 상속 받아서 클래스 내부에서 리스너(인터페이스)를 직접 구현해서(오버라이딩) 리스너를 정의하고 사용하는 방법.
-> 리스너를 한 번만 사용 할 때
콜백함수
정의 : 리스너가 호출 되었을 때 실행될 메서드 (보통 리스너와 콜백 함수는 1대1 대응관계)
이미지
A : C리스너(인터페이스) 선언
B : C리스너(인터페이스) 구현
결론 : A는 C리스너를 사용하고 싶어도 사용 할 수 없으므로 B에 C리스너를 보내서, B에서 구현된 C리스너의 콜백함수를 사용하여 나온 결과를 B로부터 받아온다. // 분리된 파일에서 값을 전달 받고 싶을 때 사용하는게 리스너(인터페이스)와 콜백함수(메서드)의 상품성