private static Executable readMember ( ObjectInputStream in ) throws IOException , ClassNotFoundException { if ( ! in . readBoolean ( ) ) return null ; boolean isMethod = in . readBoolean ( ) ; String name = ( String ) in . readObject ( ) ; Class < ? > declaring = ( Class < ? > ) in . readObject ( ) ; Class < ? > [ ] parms = readParameters ( in ) ; try { if ( isMethod ) { return declaring . getMethod ( name , parms ) ; } return declaring . getConstructor ( parms ) ; } catch ( NoSuchMethodException e ) { throw new IOException ( "Cannot find member: " + e ) ; } }
Reads a Method or a Constructor from the stream .