Primitive Datentypen werden beim Serialisierungs-Prozess selbst in den Datenstrom geschrieben. Das gleiche gilt auch für Felder; sie sind automatisch Serializable.
Neben der Methode clone() und dem Attribut length besitzt ein Feld eine zweite wichtige Eigenschaft, die eng mit clone() verbunden ist: Ein Feld lässt sich serialisieren. Dazu muss aber ein Array-Objekt die Schnittstelle java.io.Serializable implementieren, und dies macht es auch versteckt.
Betrachten wir das folgende Programm, so erkennen wir, dass nur bei einer gültigen Referenz auf ein Feld-Objekt dieses Objekt instanceof Serializable ist.
class ArrayIsSerializable { public static void main( String args[] ) { int f1[] = null; int f2[] = new int[10]; Serializable s = (Serializable)f1; System.out.println( s ); // null boolean b1 = f1 instanceof Serializable; boolean b2 = f2 instanceof Serializable; System.out.println( b1 ); // false System.out.println( b2 ); // true } }