objectinputstream 예제

On agosto 2, 2019 by adminmg

java.io.ObjectInputStream readObject()는 입력 스트림을 개체에 읽는 데 사용됩니다. Object를 실제 클래스로 변환하려면 클래스 캐스팅을 해야 합니다. 다음은 파일에서 개체를 읽을 수 있는 ObjectInputStream 예제 프로그램입니다. 다음은 개체출력스트램 및 오브젝트입력스트림을 시연하는 예제입니다. 자바의 직렬화 및 직렬화에는 더 많은 것이 있습니다. 예를 들어 직렬화 전에 java 클래스를 변경하면 어떻게 됩니까? 직렬의 사용은 무엇입니까VersionUID? 수퍼클래스가 직렬화 가능한 인터페이스를 구현하지 않는 상속을 사용하여 직렬화는 어떻게 됩니까? 나는 상세한 게시물에 이들에 대답하기 위해 노력했다, 자바에서 직렬화를 읽어 보시기 바랍니다. 이 예제에서는 ObjectOutputStream에서 일련된 개체로 이전에 작성한 파일을 읽습니다. 여기서는 ObjectInputStream.readObject() 메서드를 사용하여 직렬화했습니다. 이것은 자바에서 ObjectInputStream 및 ObjectOutputStream 클래스를 사용하는 예입니다. 위의 예에서 사용자 클래스는 Serializable 인터페이스를 구현하며 이제 개체를 출력 스트림에 저장할 수 있습니다. 예를 들어 ObjectOutputStream의 예제에서 작성된 스트림에서 읽기: 위의 예제에서는 사용자 개체를 파일에 썼습니다.

이 파일에서 읽기 위해, 우리는 ObjectInputStream을 사용합니다. 이 클래스를 사용하면 바이트가 아닌 InputStream에서 Java 개체를 읽을 수 있습니다. ObjectInputStream에서 InputStream을 래핑한 다음 개체를 읽을 수 있습니다. 이 예제에서는 Java의 ObjectInputStream 및 ObjectOutputStream 클래스를 사용하여 개체를 직렬화하고 출력 스트림에서 액세스할 수 있는 파일 또는 다른 저장소로 저장하는 방법을 살펴보겠습니다. 다시 읽고, 객체로 직렬화하고 사용합니다. ObjectInputStream에서이 메서드의 기본 구현 인터페이스 매개 변수에 명명 된 인터페이스에 대 한 클래스 개체 목록으로 Proxy.getProxyClass 호출의 결과 반환 합니다. 각 인터페이스 이름 i에 대한 클래스 개체는 ObjectOutputStream의 해당 메서드가 annotateClass를 호출하여 반환되는 값입니다. 이 메서드는 스트림의 각 고유 클래스에 대해 한 번만 호출됩니다.

이 메서드는 대체 로드 메커니즘을 사용 하 여 하위 클래스에 의해 구현될 수 있지만 클래스 개체를 반환 해야 합니다. 클래스가 배열 클래스가 아닌 경우 serialVersionUID는 직렬화된 클래스의 serialVersionUID와 비교되고 불일치가 있는 경우 직렬화가 실패하고 InvalidClassException이 throw됩니다.

Comments are closed.