Java 코드연습/인터페이스

[뉴렉처] 일부 기능을 분리하는 인터페이스

양상추상츄 2021. 11. 2. 23:38

https://www.youtube.com/watch?v=BSEdMmBXKHg&list=PLq8wAnVUcTFX4E2NplMvJfqlcgAeF_BxK&index=34 

뉴렉처 동영상 강의

 

같은 계열의 개체를 바꿔 끼는것은 추상클래스로 변경

구조가 다른 개체를 바꿔야 한다면 인터페이스로 변경

 

커스텀이 필요한 부분에만 인터페이스 기능 구현

일부 객체중에서 일부는 내가 지금 당장 결정할 수 있는 기능이 아니다라고 판단됐을때

나중에 결정이 되면 알아서 구현해 달라고 할때 인터페이스 처리함

 

 

*예제

페인트라는 메소드를 재정의(오버라이드) 함으로써 프레임이 갖고있는 영역의 일부를 내가 원하는

모양으로 그릴 수 있게됨

 

지금 이 프레임을 닫기 버튼을 눌러도 닫아지지 않는데 그 이유가 인터페이스와 연관이 있다.

사용자에게 이 창을 정말 닫을 것 인지 그런 기능을 구현해야 할 수도 있기 때문에, 어떤 다른작업이 필요할 수도 있기 때문에 닫기 버튼을 눌렀을때 그냥 닫히면 안됨

 

그래서 닫는 작업은 사용자가 직접 구현해서 코드와 결합시켜줘야함

 

여기서 원하는 것을 인터페이스로 구현해달라라고 요구하고있음

-> WindowListener 구현

 

GameWindowListener 클래스 생성