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

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

JavaTM Platform
Standard Ed. 6

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

## java.beans
클래스 DefaultPersistenceDelegate

    java.lang.Object
      java.beans.PersistenceDelegate
          java.beans.DefaultPersistenceDelegate

    public class DefaultPersistenceDelegate

extends PersistenceDelegate

`DefaultPersistenceDelegate` 는, 추상 클래스 `PersistenceDelegate` 의 구상 구현이며, 정보를 얻을 수 없는 클래스가 디폴트로 사용하는 위양입니다. JavaBeans 규약에 따르는 클래스는,`DefaultPersistenceDelegate` 에 의해, 특별한 구성을 실시하지 않아도, 버젼의 차이에 의한 영향을 받지 않는 공개 API 베이스의 지속성을 확보할 수가 있습니다.

클래스가 인수 없음의 생성자 을 가지고 있어, Introspector 로부터 반환되는 차례로 설정 메소드와 취득 메소드의 조합을 실시하는 것으로, 그 상태가 정확하게 나타나고 있는 것이 중요한 가정 조건이 됩니다. `DefaultPersistenceDelegate` 는, JavaBeans 의 코드 불요의 지속성을 제공하는 것 외에 인수로서 프로퍼티의 값을 요구할 뿐(만큼)의 인수없이 없는 생성자 을 가지는 클래스에 지속 기억역을 가져오는 편리한 수단을 제공합니다.

도입된 버젼:
  1.4
관련 항목:
  `DefaultPersistenceDelegate(String[])` , `Introspector`

생성자 의 개요
`DefaultPersistenceDelegate ()` 인수 없음의 생성자 을 가지는 클래스전용으로, 지속적인 위양을 작성합니다.
`DefaultPersistenceDelegate (String [] constructorPropertyNames)` `constructorPropertyNames` 에 의해 지정된 프로퍼티명을 인수의 값으로 하는 생성자 을 가진 클래스전용으로, 디폴트의 지속적인 위양을 작성합니다.

메소드의 개요
`protected void` | `initialize (Class <? > type, Object oldInstance, Object newInstance, Encoder out)` 이 `initialize` 메소드의 디폴트 구현은, Introspector 에 의해 반환되는 차례로 설정 메소드와 취득 메소드의 조합을 실시하는 것으로, 이 형태의 객체 상태가 모두 공개된 상태로 합니다.
`protected Expression` | `instantiate (Object oldInstance, Encoder out)` 이 `instantiate` 메소드의 디폴트 구현은, 사전 정의 끝난 메소드명 「new」를 포함한 식 (`DefaultPersistenceDelegate` 의 생성자 으로 지정된 것처럼 인수를 사용해 생성자 을 호출한다)을 돌려줍니다.
`protected boolean` | `mutatesTo (Object oldInstance, Object newInstance)` 지정된 생성자 내의 인수의 수가 제로 이외로,`oldInstance` 클래스가 명시적으로 equals 메소드를 선언하고 있는 경우, 이 메소드의 반환값은 `oldInstance.equals(newInstance)` 가 됩니다.

클래스 java.beans. PersistenceDelegate 로부터 상속된 메소드
`writeObject`

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

생성자 의 상세

### DefaultPersistenceDelegate

    public DefaultPersistenceDelegate()

  인수 없음의 생성자 을 가지는 클래스전용으로, 지속적인 위양을 작성합니다.

  관련 항목:
    `DefaultPersistenceDelegate(java.lang.String[])`

### DefaultPersistenceDelegate

    public DefaultPersistenceDelegate(String [] constructorPropertyNames)

  `constructorPropertyNames` 에 의해 지정된 프로퍼티명을 인수의 값으로 하는 생성자 을 가진 클래스전용으로, 디폴트의 지속적인 위양을 작성합니다. 생성자 의 인수는, 프로퍼티명이 제공되는 차례로 평가하는 것에 의해 작성됩니다. 이 클래스를 사용해, 특정의 형태를 직렬화할 때 사용하는 단일의 우선 생성자 을 지정하려면 , 생성자 의 인수를 구성하는 프로퍼티명을 기술합니다. 예를 들어, 인수 없음의 생성자 을 정의하지 않는 `Font` 클래스는, 다음의 지속적인 위양을 사용해 처리할 수 있습니다.

           new DefaultPersistenceDelegate(new String[]{"name", "style", "size"});

  파라미터:
    `constructorPropertyNames` - 이 생성자 의 인수가 되는 프로퍼티명
  관련 항목:
    `instantiate(java.lang.Object, java.beans.Encoder)`

메소드의 상세

### mutatesTo

    protected boolean mutatesTo(Object  oldInstance,
                                Object  newInstance)

  지정된 생성자 내의 인수의 수가 제로 이외로,`oldInstance` 클래스가 명시적으로 equals 메소드를 선언하고 있는 경우, 이 메소드의 반환값은 `oldInstance.equals(newInstance)` 가 됩니다. 그 이외의 경우, 이 메소드는, 2 개의 인스턴스의 클래스가 등가인 경우에 true 를 돌려주는 슈퍼 클래스 정의를 사용합니다.

  오버라이드(override):
    클래스 `PersistenceDelegate` 내의 `mutatesTo`
  파라미터:
    `oldInstance` - 카피되는 인스턴스
    `newInstance` - 변경되는 인스턴스
  반환값:
    `oldInstance` 로 일련의 변경을 적용하는 것에 의해, `newInstance` 와 등가의 카피를 작성할 수 있는 경우 true.
  관련 항목:
    `DefaultPersistenceDelegate(String[])`

### instantiate

    protected Expression  instantiate(Object  oldInstance,
                                     Encoder  out)

  이 `instantiate` 메소드의 디폴트 구현은, 사전 정의 끝난 메소드명 「new」를 포함한 식 (`DefaultPersistenceDelegate` 의 생성자 으로 지정된 것처럼 인수를 사용해 생성자 을 호출한다)을 돌려줍니다.

  정의:
    클래스 `PersistenceDelegate` 내의 `instantiate`
  파라미터:
    `oldInstance` - 인스턴스가 생성되는 인스턴스
    `out` - 코드 출력 스트림
  반환값:
    치 `oldInstance` 를 가지는 식
  관련 항목:
    `DefaultPersistenceDelegate(String[])`

### initialize

    protected void initialize(Class <? > type,
                              Object  oldInstance,
                              Object  newInstance,
                              Encoder  out)

  이 `initialize` 메소드의 디폴트 구현은, Introspector 에 의해 반환되는 차례로 설정 메소드와 취득 메소드의 조합을 실시하는 것으로, 이 형태의 객체 상태가 모두 공개된 상태로 합니다. 프로퍼티 기술자가 `Boolean.TRUE` 와 등가의 값을 가지는 일시적인 속성을 정의하고 있는 경우는, 그 프로퍼티을 무시합니다. `ObjectOutputStream` 가 사용하는 필드 수식자에 의해, 「일시적」이라고 하는 말의 사용법이 완전히 다른 점에 주의해 주세요.

  비일시적인 프로퍼티 마다,`oldInstance` 에 인수 없음의 취득 메소드를 적용하는 식이 작성됩니다. 인스턴스를 직렬화하면(자), 이 식의 값이 그 프로퍼티치가 됩니다. 복제된 환경에서, 이 식의 값에 의해 타겟의 값이 변화하는 경우 (`mutatesTo`), 새로운 값은 낡은 값과 등가가 되도록(듯이) 초기화됩니다. 이 경우, 프로퍼티치는 변경되지 않기 때문에, 대응하는 설정 메소드를 호출할 필요는 없습니다. 또, 문장도 일절 발행되지 않습니다. 그러나, 상기 이외의 경우, 이 값의 식은 다른 식 (일반적으로은 생성자 )에서 옮겨놓을 수 있어 객체에 새로운 프로퍼티의 값을 인스톨 하는 목적으로, 대응하는 설정 메소드가 불려 갑니다. 이 schema는, 이 위양을 사용해, 스트림의 출력으로부터 디폴트의 정보를 삭제합니다.

  이러한 문장이 실행되는 출력 스트림에게 건네질 때,`newInstance` 에 대한 부작용이 발생합니다. 일반적으로, 이것은 서로 의존하는 값을 가지는 프로퍼티의 문제입니다. 그러나, 이것에 의해, 출력에 기입하지 않으면 안 되는 문장이 적게 되어, 직렬화 처리가 용이하게 된다고 하는 이점도 있습니다. 일반적으로는, 상호의존의 관계에 있는 프로퍼티을 처리하는 작업의 문제는, 후속의 프로퍼티의 값에 의존하지 않게 클래스내의 프로퍼티의 순서를 결정하는 작업의 문제가 됩니다.

  오버라이드(override):
    클래스 `PersistenceDelegate` 내의 `initialize`
  파라미터:
    `oldInstance` - 카피되는 인스턴스
    `newInstance` - 변경되는 인스턴스
    `out` - 초기화문이 기입해지는 스트림
  관련 항목:
    `Introspector.getBeanInfo(java.lang.Class)` , `PropertyDescriptor`

개요 | 패키지 | 클래스 | 사용 | 계층 트리 | 비추천 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 도 참조해 주세요.