JavaTM Platform
Standard Ed. 6

패키지 java.beans

Beans (JavaBeansTM 아키텍쳐(architecture)에 근거한 컴퍼넌트)의 개발에 관련하는 클래스가 포함되어 있습니다.

참조처:
          설명

인터페이스의 개요
AppletInitializer 이 인터페이스는, java.beans.Beans.instantiate 와 함께 동작하도록(듯이) 설계되고 있습니다.
BeanInfo Bean 의 구현자는, 이 BeanInfo 인터페이스를 구현하는 BeanInfo 클래스를 제공해, 자신의 Bean 의 메소드, 프로퍼티, 이벤트 등에 관한 명시적인 정보를 제공할 수가 있습니다.
Customizer 카스타마이자크라스는, 타겟 Java Bean 를 커스터마이즈하기 위한 완전한 커스텀 GUI 를 제공합니다.
DesignMode 이 인터페이스는, java.beans.beancontext.BeanContextChild 의 인스턴스의 상자가 되어 있는 계층에 현재의 designTime 프로퍼티을 보내기 위해서(때문에), java.beans.beancontext.BeanContext 의 인스턴스에 의해 구현, 또는 java.beans.beancontext.BeanContext 의 인스턴스로부터 위양 됩니다.
ExceptionListener ExceptionListener 는, 내부 예외의 통지를 받습니다.
PropertyChangeListener PropertyChange 이벤트는, Bean 가 「바운드」프로퍼티을 변경할 때마다 트리거됩니다.
PropertyEditor PropertyEditor 클래스는, 사용자가 지정의 형태의 프로퍼티치를 편집하기 위한 GUI 의 지원를 제공합니다.
VetoableChangeListener VetoableChange 이벤트는, Bean 가 「제약」프로퍼티을 변경할 때마다 트리거됩니다.
Visibility 사용하는 환경에 따라서는, Bean 는 GUI 를 사용할 수 없는 서버상에서의 실행도 가능합니다.
 

클래스의 개요
BeanDescriptor BeanDescriptor 는, Bean 의 Java 클래스나 displayName 등, Bean 에 관한 글로벌 정보를 제공합니다.
Beans 이 클래스는, 몇개의 다목적 Bean 제어 메소드를 제공합니다.
DefaultPersistenceDelegate DefaultPersistenceDelegate 는, 추상 클래스 PersistenceDelegate 의 구상 구현이며, 정보를 얻을 수 없는 클래스가 디폴트로 사용하는 위양입니다.
Encoder Encoder 클래스는, 공개 API 에 관해서 복수의 JavaBeans 상태를 encode 하는 파일 또는 스트림을 작성할 때에 사용할 수 있습니다.
EventHandler EventHandler 클래스는, 수신 이벤트 객체와 타겟 객체를 포함한 단순한 문장을 실행하는 메소드를 가지는, 이벤트 청취자의 동적 생성을 지원합니다.
EventSetDescriptor EventSetDescriptor 는, 지정된 JavaBean 가 트리거하는 이벤트의 그룹을 기술합니다.
Expression Expression 객체는, 타겟과 복수의 인수에 단일의 메소드를 적용하는 것으로써, 단일의 반환값 ("a.getFoo()" 의 경우와 같이)를 얻을 수 있는 프리미티브(primitive)식입니다.
FeatureDescriptor FeatureDescriptor 클래스는, PropertyDescriptor, EventSetDescriptor, MethodDescriptor 등의 공통 base class입니다.
IndexedPropertyChangeEvent JavaBeans 스펙에 준거한 컴퍼넌트 (Bean)가 바운드 인덱스 첨부 프로퍼티을 변경할 때마다, IndexedPropertyChange 이벤트가 송신됩니다.
IndexedPropertyDescriptor IndexPropertyDescriptor 는, 배열과 같은 기능을 가지는 프로퍼티을 기술함과 함께, 배열내의 특정의 요소에의 액세스에 사용하는 인덱스 첨부의 read 메소드나 기입해 메소드를 갖추고 있습니다.
Introspector Introspector 클래스는, 툴에 대해서, 타겟 Java Bean 가 지원하는 프로퍼티, 이벤트, 메소드를 조사하는 표준적인 수법을 제공합니다.
MethodDescriptor MethodDescriptor 는, 그 외의 컴퍼넌트로부터의 외부 액세스를 위해서(때문에) Java Bean 로 지원되는 특정의 메소드를 기술합니다.
ParameterDescriptor ParameterDescriptor 클래스에서는, Bean 의 구현자가 각자의 파라미터의 각각 붙어, java.lang.reflect.Method 클래스에서 제공되는 저레벨의 형태 정보 뿐만이 아니라, 추가 정보를 제공할 수 있습니다.
PersistenceDelegate PersistenceDeligate 클래스는, 클래스의 공개 API 에 포함되는 메소드에 의해, 지정된 클래스의 인스턴스 상태를 표현합니다.
PropertyChangeEvent PropertyChange 이벤트는, Bean 가 「바운드」프로퍼티 또는 「제약」프로퍼티을 변경할 때마다 송신됩니다.
PropertyChangeListenerProxy 이름이 지정된 PropertyChangeListener 를 추가하는 목적으로 EventListenerProxy 를 확장하는 클래스입니다.
PropertyChangeSupport 바운드 프로퍼티을 지원하는 Bean 로 사용할 수 있는 유틸리티 클래스입니다.
PropertyDescriptor PropertyDescriptor 는, Java Bean 가 한 벌의 액세스용 메소드를 사용해 export 하는 단일의 프로퍼티을 기술합니다.
PropertyEditorManager PropertyEditorManager 는, 지정된 형명의 프로퍼티 에디터를 찾아내기 위해서(때문에) 사용할 수 있습니다.
PropertyEditorSupport 프로퍼티 에디터를 구축하기 위한 지원 클래스입니다.
SimpleBeanInfo 사용자가 BeanInfo 클래스를 제공하기 쉬워지도록(듯이) 하는 지원 클래스입니다.
Statement Statement 객체는,"a.setFoo(b)" 와 같이, 타겟과 일련의 인수에 단일의 메소드가 적용되는 프리미티브(primitive)인 문장을 나타냅니다.
VetoableChangeListenerProxy VetoableChangeListener 를 제약 프로퍼티과 관련짓는 목적으로 EventListenerProxy 를 확장하는 클래스입니다.
VetoableChangeSupport 제약 프로퍼티을 지원하는 Bean 로 사용할 수 있는 유틸리티 클래스입니다.
XMLDecoder XMLDecoder 클래스는,XMLDecoder 로 작성된 XML 문서의 read에 사용할 수 있는 것 외에ObjectInputStream 와 같은 기능도 갖추고 있습니다.
XMLEncoder XMLEncoder 클래스는 ObjectOutputStream 의 보완적인 대체 클래스이며,ObjectOutputStreamSerializable 객체의 바이너리 표현을 생성하는 경우와 같게 해 JavaBean 의 텍스트 표현을 생성합니다.
 

예외의 개요
IntrospectionException 인트로스페크션중에 예외가 발생했을 경우에 throw 됩니다.
PropertyVetoException PropertyVetoException 는, 프로퍼티에 대해서 추천 되는 변경이 받아들여지지 않는 값인 경우에 throw 됩니다.
 

주석형의 개요
ConstructorProperties 생성자 의 주석.
 

패키지 java.beans 의 설명

Beans (JavaBeansTM 아키텍쳐(architecture)에 근거한 컴퍼넌트)의 개발에 관련하는 클래스가 포함되어 있습니다. 일부의 클래스는, 어플리케이션의 실행중에 Bean 에 의해 사용됩니다. 예를 들어, 이벤트 클래스는, 프로퍼티과 거부 가능한 변경 이벤트를 트리거하는 Bean 에 의해 사용됩니다 (PropertyChangeEvent 를 참조). 그러나, 이 패키지에 포함되는 대부분의 클래스는, Bean 에디터 (어플리케이션을 작성하기 위해서 Bean 의 커스터마이즈 및 편성을 실시하는 개발 환경) 용입니다. 이러한 클래스를 사용하면, Bean 에디터로 Bean 의 커스터마이즈용 사용자 인터페이스를 간단하게 작성할 수 있습니다. 예를 들어, Bean 에디터에서는 처리할 수 없는 특수한 형태의 프로퍼티을 가지는 Bean 가 있다고 합니다. 이 경우, Bean 개발자는 PropertyEditor 인터페이스를 사용해, 이 특수한 형태의 에디터를 제공할 수 있습니다.

Bean 에 의한 소비 자원을 최소한으로 억제하기 (위해)때문에, Bean 에디터에 의해 사용되는 클래스가 읽히는 것은, Bean 의 편집시만됩니다. 어플리케이션으로 Bean 가 실행되고 있을 때는 필요없기 때문에, 읽히지 않습니다. 이 정보는, Bean 정보 (BeanInfo 를 참조)에 보관됩니다.

명시하지 않는 한, null 치 또는 빈 상태(empty)의 캐릭터 라인은, 이 패키지의 메소드로 유효한 파라미터가 아닙니다. 그러한 파라미터가 사용되면(자), 예외가 발생할 가능성이 있습니다.

장기 지속성

버젼 1.4 의 java.beans 패키지는, 프로퍼티치의 텍스트 표현으로서 Bean 의 read 및 기입을 실시하는 것으로, 「장기 지속성」을 지원하고 있습니다. 프로퍼티치를 Bean 로서 read나 기입을 반복해 실시하는 것으로, 그 공개 가능 상태를 취득할 수 있습니다. 이 방식은, 변경의 가능성이 있는 비공개의 구현은 아니고 공개의 API 인 만큼 의존하고 있기 (위해)때문에, 장기 기억에 적절하고 있습니다.

주: 이 지속 schema는, 이벤트 핸들러를 사용하는 경우와 같이, 내부 커스텀 클래스의 인스턴스를 자동적으로 작성할 수 없습니다. 이 문제를 회피하려면 , 커스텀 이벤트 핸들러의 내부 클래스 대신에 EventHandler 클래스를 사용합니다.

XML 형식에서 Bean 를 읽어내려면 XMLDecoder , 기입하려면 XMLEncoder 를 사용합니다. 지속 schema에는, Bean 에 관한 특별한 지식이 없어도 Bean 에 정보를 읽어들일 수 있다고 하는 특징이 있습니다.

한편, Bean 로부터 정보를 써낼 때는, Bean 의 형태에 관한 지식이 필요하게 되는 일이 있습니다. 인수 없음의 생성자 과 프로퍼티의 공개 취득/설정 메소드만으로 Bean 상태를 표현할 수 있는 경우, Bean 에 관한 특별한 지식은 불필요합니다. 그 이외의 경우, Bean 에는, 커스터마이즈 된 「지속적인 위양」 (특정의 형태의 Bean 를 써내는 객체)이 필요합니다. JDK 의 클래스 가운데,java.awt.Component 의 하위에 있는 것은 모두, 프로퍼티과 지속적인 위양을 갖추고 있습니다.

Bean 에 지속적인 위양을 제공할 필요가 있는 경우는,DefaultPersistenceDelegate 의 인스턴스를 사용하는지,PersistenceDelegate 의 서브 클래스를 작성합니다. 프로퍼티치를 인수로서 Bean 의 생성자 을 호출하고 싶다고 하는 이유만으로 지속적인 위양이 필요한 경우는, 인수를 1 개만 취하는 DefaultPersistenceDelegate 생성자 을 사용해 지속적인 위양을 작성할 수 있습니다. 그 이외의 경우는, 일반적으로, 다음의 클래스를 필요로 하는 고유의 지속적인 위양을 구현할 필요가 있습니다.

PersistenceDelegate
모든 지속적인 위양의 파생원추상 클래스. 서브 클래스는, Bean 의 형태 정보를 사용해, Bean 의 작성과 그 상태의 복원에 필요한 StatementExpression 를 제공합니다.
Statement
객체상의 단일의 메소드의 호출을 나타냅니다. 그 메소드에 대한 인수세트를 포함합니다.
Expression
값을 돌려주는 메소드용의 Statement 의 서브 클래스.

지속적인 위양을 작성하면(자),XMLEncodersetPersistenceDelegate 메소드를 사용해 등록합니다.

관련 문서

개요, 아키텍쳐(architecture), 및 튜토리얼에 대해서는, 아래와 같이를 참조해 주세요.


JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.