Which one of the following requirements must a class meet in order to be written to a stream using ObjectOutputStream?
The class must implement the Serializable interface.
The class cannot have any fields declared as transient.
The class cannot contain any static fields or methods.
The class must provide a SerialPersistentFields array.
All fields and methods in the class must be declared public.