@InterfaceAudience.Public
 @InterfaceStability.Stable
public interface Writable
DataInput and DataOutput.
 Any key or value type in the Hadoop Map-Reduce
 framework implements this interface.
Implementations typically implement a static read(DataInput)
 method which constructs a new instance, calls readFields(DataInput) 
 and returns the instance.
Example:
     public class MyWritable implements Writable {
       // Some data
       private int counter;
       private long timestamp;
       // Default constructor to allow (de)serialization
       MyWritable() { }
       public void write(DataOutput out) throws IOException {
         out.writeInt(counter);
         out.writeLong(timestamp);
       }
       public void readFields(DataInput in) throws IOException {
         counter = in.readInt();
         timestamp = in.readLong();
       }
       public static MyWritable read(DataInput in) throws IOException {
         MyWritable w = new MyWritable();
         w.readFields(in);
         return w;
       }
     }
 | Modifier and Type | Method and Description | 
|---|---|
| void | readFields(DataInput in)Deserialize the fields of this object from  in. | 
| void | write(DataOutput out)Serialize the fields of this object to  out. | 
void write(DataOutput out) throws IOException
out.out - DataOuput to serialize this object into.IOException - any other problem for write.void readFields(DataInput in) throws IOException
in.  
 
 For efficiency, implementations should attempt to re-use storage in the existing object where possible.
in - DataInput to deseriablize this object from.IOException - any other problem for readFields.Copyright © 2025 Apache Software Foundation. All rights reserved.