Visibility

Visibility (표시 가능성 인터페이스)

어떤 상황에서는 빈이 GUI가 없는 서버에서 실행될 수 있어요. 이 인터페이스는 빈에게 GUI가 절대적으로 필요한지 질의하고, 빈에게 GUI를 사용할 수 있는지 여부를 알려 주기 위해 사용할 수 있어요. 이 인터페이스는 전문 개발자를 위한 것이며, 일반적인 단순 빈에는 필요하지 않아요.

출처: Java API Reference

본문

Visibility 인터페이스는 빈이 GUI 없이도 동작할 수 있는지, 아니면 GUI가 반드시 필요한지를 서로 소통하는 데 쓰여요. 헤드리스(디스플레이 없는) 환경에서 빈을 실행할 때, 빈이 GUI 없이도 기능할 수 있다면 이를 활용할 수 있어요.

BeanContext는 이 인터페이스를 통해 중첩된 빈들이 GUI가 필요한지 여부를 알고, 사용 가능한 GUI 여부를 전파할 수 있어요. BeanContext, BeanContextServices가 하위 인터페이스이고, BeanContextServicesSupport, BeanContextSupport가 구현 클래스예요.

주요 메서드는 다음과 같아요.

boolean needsGui()

void dontUseGui()
void okToUseGui()
boolean avoidingGui()
  • needsGui() — 이 빈이 동작하기 위해 GUI가 필요한지 여부를 반환해요.
  • dontUseGui() — GUI를 사용하지 말라고 빈에게 알려 줘요.
  • okToUseGui() — GUI를 사용해도 좋다고 빈에게 알려 줘요.
  • avoidingGui() — 빈이 GUI를 회피하고 있는지 여부를 반환해요.

더 알아보기 (Learn more)

Java 공식 API