PropertyChangeSupport (Java Platform SE 6) - xrath.com 에서 번역됨

개요 | 패키지 | 클래스 | 사용 | 계층 트리 | 비추천 API | 색인 | 헬프

JavaTM Platform
Standard Ed. 6

앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드

## java.beans
클래스 PropertyChangeSupport

    java.lang.Object
      java.beans.PropertyChangeSupport

모든 구현된 인터페이스:
  Serializable

직계의 기존의 서브 클래스:
  SwingPropertyChangeSupport

    public class PropertyChangeSupport

extends Object
implements Serializable

바운드 프로퍼티을 지원하는 Bean 로 사용할 수 있는 유틸리티 클래스입니다. 이 클래스의 인스턴스를 Bean 의 멤버 필드로서 사용해, 다양한 처리를 위양 할 수가 있습니다. 이 클래스는 직렬화 가능합니다. 직렬화했을 경우, 직렬화 가능한 청취자가 보존 및 복원됩니다. 직렬화때, 직렬화 가능하지 않은 청취자는 스킵 됩니다.

관련 항목:
  직렬화 된 형식

생성자 의 개요
`PropertyChangeSupport (Object sourceBean)` `PropertyChangeSupport` 객체를 구축합니다.

메소드의 개요
`void` | `addPropertyChangeListener (PropertyChangeListener listener)` PropertyChangeListener 를 청취자 리스트에 추가합니다.
`void` | `addPropertyChangeListener (String propertyName, PropertyChangeListener listener)` 특정의 프로퍼티의 PropertyChangeListener 를 추가합니다.
`void` | `fireIndexedPropertyChange (String propertyName, int index, boolean oldValue, boolean newValue)` 등록되어 모든 청취자에게 `boolean` 바운드 인덱스 첨부 프로퍼티의 갱신을 통지합니다.
`void` | `fireIndexedPropertyChange (String propertyName, int index, int oldValue, int newValue)` 등록되어 모든 청취자에게 `int` 바운드 인덱스 첨부 프로퍼티의 갱신을 통지합니다.
`void` | `fireIndexedPropertyChange (String propertyName, int index, Object oldValue, Object newValue)` 등록되어 모든 청취자에게 바운드 인덱스 첨부 프로퍼티의 갱신을 통지합니다.
`void` | `firePropertyChange (PropertyChangeEvent evt)` 등록되어 있는 청취자에게, 기존의 PropertyChangeEvent 를 트리거합니다.
`void` | `firePropertyChange (String propertyName, boolean oldValue, boolean newValue)` 등록되어 모든 청취자에게 boolean 바운드 프로퍼티의 갱신을 통지합니다.
`void` | `firePropertyChange (String propertyName, int oldValue, int newValue)` 등록되어 모든 청취자에게 int 바운드 프로퍼티의 갱신을 통지합니다.
`void` | `firePropertyChange (String propertyName, Object oldValue, Object newValue)` 등록되어 모든 청취자에게 바운드 프로퍼티의 갱신을 통지합니다.
`PropertyChangeListener []` | `getPropertyChangeListeners ()` addPropertyChangeListener()에 의해 PropertyChangeSupport 객체에 추가된 모든 청취자의 배열을 돌려줍니다.
`PropertyChangeListener []` | `getPropertyChangeListeners (String propertyName)` 지정된 프로퍼티에 관련지을 수 있던 모든 청취자의 배열을 돌려줍니다.
`boolean` | `hasListeners (String propertyName)` 특정의 프로퍼티에 청취자가 있을지 어떨지를 판정합니다.
`void` | `removePropertyChangeListener (PropertyChangeListener listener)` PropertyChangeListener 를 청취자 리스트로부터 삭제합니다.
`void` | `removePropertyChangeListener (String propertyName, PropertyChangeListener listener)` 특정의 프로퍼티의 PropertyChangeListener 를 삭제합니다.

클래스 java.lang. Object 로부터 상속된 메소드
`clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait`

생성자 의 상세

### PropertyChangeSupport

    public PropertyChangeSupport(Object  sourceBean)

  `PropertyChangeSupport` 객체를 구축합니다.

  파라미터:
    `sourceBean` - 모든 이벤트의 소스로서 지정되는 Bean

메소드의 상세

### addPropertyChangeListener

    public void addPropertyChangeListener(PropertyChangeListener  listener)

  PropertyChangeListener 를 청취자 리스트에 추가합니다. 청취자는, 모든 프로퍼티에 대해서 등록됩니다. 같은 청취자 객체를 여러 차례 추가할 수 있어 추가한 회수만 청취자 객체가 불려 갑니다. `listener` 가 null 의 경우는, 예외는 throw 되지 않고, 아무것도 처리는 행해지지 않습니다.

  파라미터:
    `listener` - 추가하는 PropertyChangeListener

### removePropertyChangeListener

    public void removePropertyChangeListener(PropertyChangeListener  listener)

  PropertyChangeListener 를 청취자 리스트로부터 삭제합니다. 모든 프로퍼티으로 등록된 PropertyChangeListener 를 삭제합니다. 같은 이벤트 소스에 `listener` 가 2 회 이상 추가되었을 경우는, 삭제된 뒤에, 추가된 회수보다 1 회 적은 통지를 합니다. `listener` 가 null 의 경우, 또는 추가되지 않았던 경우는, 예외는 throw 되지 않고, 아무것도 처리는 행해지지 않습니다.

  파라미터:
    `listener` - 삭제하는 PropertyChangeListener

### getPropertyChangeListeners

    public PropertyChangeListener [] getPropertyChangeListeners()

  addPropertyChangeListener()에 의해 PropertyChangeSupport 객체에 추가된 모든 청취자의 배열을 돌려줍니다.

  지정된 프로퍼티에 의해 추가된 청취자가 있는 경우, PropertyChangeListener 와 `PropertyChangeListenerProxy` 로부터 되는 배열이 돌려주어집니다. 청취자의 식별로 관계하고 있는 호출원메소드는, 개개의 요소를 테스트해 `PropertyChangeListenerProxy` 일지 어떨지의 확인, 캐스트, 파라미터의 확인을 실시할 필요가 있습니다.

       PropertyChangeListener[] listeners = bean.getPropertyChangeListeners();
       for (int i = 0; i < listeners.length; i++) {
               if (listeners[i] instanceof PropertyChangeListenerProxy) {
           PropertyChangeListenerProxy proxy =
                          (PropertyChangeListenerProxy) listeners[i];
           if (proxy.getPropertyName(). equals("foo")) {
             // proxy is a PropertyChangeListener which was associated
             // with the property named "foo"
           }
         }
       }

  반환값:
    추가된 모든 `PropertyChangeListeners`. 청취자가 추가되어 있지 않은 경우는 빈 상태(empty)의 배열
  도입된 버젼:
    1.4
  관련 항목:
    `PropertyChangeListenerProxy`

### addPropertyChangeListener

    public void addPropertyChangeListener(String  propertyName,
                                          PropertyChangeListener  listener)

  특정의 프로퍼티의 PropertyChangeListener 를 추가합니다. 청취자가 불려 가는 것은, firePropertyChange 의 호출에 의해, 그 특정의 프로퍼티이 지정되었을 때 뿐입니다. 같은 청취자 객체를 여러 차례 추가할 수 있습니다. 각 프로퍼티에서는, 청취자가 그 프로퍼티에 추가된 회수만 청취자가 불려 갑니다. `propertyName` 또는 `listener` 가 null 의 경우는, 예외는 throw 되지 않고, 아무것도 처리는 행해지지 않습니다.

  파라미터:
    `propertyName` - 대기하고 있는 프로퍼티의 이름
    `listener` - 추가하는 PropertyChangeListener

### removePropertyChangeListener

    public void removePropertyChangeListener(String  propertyName,
                                             PropertyChangeListener  listener)

  특정의 프로퍼티의 PropertyChangeListener 를 삭제합니다. 지정한 프로퍼티의 같은 이벤트 소스에 `listener` 가 2 회 이상 추가되었을 경우는, 삭제된 뒤에, 추가된 회수보다 1 회 적은 통지를 합니다. `propertyName` 가 null 의 경우는, 예외는 throw 되지 않고, 아무것도 처리는 행해지지 않습니다. `listener` 가 null 의 경우, 또는 지정된 프로퍼티에 추가되지 않았던 경우는, 예외는 throw 되지 않고, 아무것도 처리는 행해지지 않습니다.

  파라미터:
    `propertyName` - 대기하고 있던 프로퍼티의 이름
    `listener` - 삭제하는 PropertyChangeListener

### getPropertyChangeListeners

    public PropertyChangeListener [] getPropertyChangeListeners(String  propertyName)

  지정된 프로퍼티에 관련지을 수 있던 모든 청취자의 배열을 돌려줍니다.

  파라미터:
    `propertyName` - 대기하고 있는 프로퍼티의 이름
  반환값:
    이름 첨부 프로퍼티에 관련지을 수 있던 모든 `PropertyChangeListeners`. 이러한 청취자가 추가되어 있지 않은 경우, 또는 `propertyName` 가 null 의 경우는 빈 상태(empty)의 배열이 반환되는
  도입된 버젼:
    1.4

### firePropertyChange

    public void firePropertyChange(String  propertyName,
                                   Object  oldValue,
                                   Object  newValue)

  등록되어 모든 청취자에게 바운드 프로퍼티의 갱신을 통지합니다. 낡은 값과 새로운 값이 동일하고, null 가 아닌 경우, 이벤트는 트리거되지 않습니다.

  이 메소드는,`PropertyChangeEvent` 값을 받는, 보다 일반적인 firePropertyChange 메소드의 간이 래퍼입니다.

  파라미터:
    `propertyName` - 변경된 프로퍼티의 프로그램명
    `oldValue` - 프로퍼티의 낡은 값
    `newValue` - 프로퍼티의 새로운 값

### firePropertyChange

    public void firePropertyChange(String  propertyName,
                                   int oldValue,
                                   int newValue)

  등록되어 모든 청취자에게 int 바운드 프로퍼티의 갱신을 통지합니다. 낡은 값과 새로운 값이 동일한 경우, 이벤트는 트리거되지 않습니다.

  이 메소드는, Object 값을 받는, 보다 일반적인 firePropertyChange 메소드의 간이 래퍼입니다.

  파라미터:
    `propertyName` - 변경된 프로퍼티의 프로그램명
    `oldValue` - 프로퍼티의 낡은 값
    `newValue` - 프로퍼티의 새로운 값

### firePropertyChange

    public void firePropertyChange(String  propertyName,
                                   boolean oldValue,
                                   boolean newValue)

  등록되어 모든 청취자에게 boolean 바운드 프로퍼티의 갱신을 통지합니다. 낡은 값과 새로운 값이 동일한 경우, 이벤트는 트리거되지 않습니다.

  이 메소드는, Object 값을 받는, 보다 일반적인 firePropertyChange 메소드의 간이 래퍼입니다.

  파라미터:
    `propertyName` - 변경된 프로퍼티의 프로그램명
    `oldValue` - 프로퍼티의 낡은 값
    `newValue` - 프로퍼티의 새로운 값

### firePropertyChange

    public void firePropertyChange(PropertyChangeEvent  evt)

  등록되어 있는 청취자에게, 기존의 PropertyChangeEvent 를 트리거합니다. 지정된 이벤트의 이전의 값과 새로운 값이 동일해서 null 가 아닌 경우, 이벤트는 트리거되지 않습니다.

  파라미터:
    `evt` - PropertyChangeEvent 객체

### fireIndexedPropertyChange

    public void fireIndexedPropertyChange(String  propertyName,
                                          int index,
                                          Object  oldValue,
                                          Object  newValue)

  등록되어 모든 청취자에게 바운드 인덱스 첨부 프로퍼티의 갱신을 통지합니다.

  낡은 값과 새로운 값이 동일하고, null 가 아닌 경우, 이벤트는 트리거되지 않습니다.

  이 메소드는,`PropertyChangeEvent` 값을 받는, 보다 일반적인 firePropertyChange 메소드의 간이 래퍼입니다.

  파라미터:
    `propertyName` - 변경된 프로퍼티의 프로그램명
    `index` - 변경된 프로퍼티 요소의 인덱스.
    `oldValue` - 프로퍼티의 낡은 값
    `newValue` - 프로퍼티의 새로운 값
  도입된 버젼:
    1.5

### fireIndexedPropertyChange

    public void fireIndexedPropertyChange(String  propertyName,
                                          int index,
                                          int oldValue,
                                          int newValue)

  등록되어 모든 청취자에게 `int` 바운드 인덱스 첨부 프로퍼티의 갱신을 통지합니다.

  낡은 값과 새로운 값이 동일한 경우, 이벤트는 트리거되지 않습니다.

  이 메소드는, Object 값을 받는, 보다 일반적인 fireIndexedPropertyChange 메소드의 간이 래퍼입니다.

  파라미터:
    `propertyName` - 변경된 프로퍼티의 프로그램명
    `index` - 변경된 프로퍼티 요소의 인덱스.
    `oldValue` - 프로퍼티의 낡은 값
    `newValue` - 프로퍼티의 새로운 값
  도입된 버젼:
    1.5

### fireIndexedPropertyChange

    public void fireIndexedPropertyChange(String  propertyName,
                                          int index,
                                          boolean oldValue,
                                          boolean newValue)

  등록되어 모든 청취자에게 `boolean` 바운드 인덱스 첨부 프로퍼티의 갱신을 통지합니다.

  낡은 값과 새로운 값이 동일한 경우, 이벤트는 트리거되지 않습니다.

  이 메소드는, Object 값을 받는, 보다 일반적인 fireIndexedPropertyChange 메소드의 간이 래퍼입니다.

  파라미터:
    `propertyName` - 변경된 프로퍼티의 프로그램명
    `index` - 변경된 프로퍼티 요소의 인덱스.
    `oldValue` - 프로퍼티의 낡은 값
    `newValue` - 프로퍼티의 새로운 값
  도입된 버젼:
    1.5

### hasListeners

    public boolean hasListeners(String  propertyName)

  특정의 프로퍼티에 청취자가 있을지 어떨지를 판정합니다. 모든 프로퍼티에 등록된 청취자가 포함됩니다. `propertyName` 가 null 의 경우는, 모든 프로퍼티으로 등록된 청취자의 체크만을 합니다.

  파라미터:
    `propertyName` - 프로퍼티명
  반환값:
    지정한 프로퍼티에 1 개 이상의 청취자가 있는 경우는 true

개요 | 패키지 | 클래스 | 사용 | 계층 트리 | 비추천 API | 색인 | 헬프

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 도 참조해 주세요.