40 import java.security.AccessControlContext;
41 import java.security.AccessController;
42 import java.security.MessageDigest;
43 import java.security.NoSuchAlgorithmException;
44 import java.security.PermissionCollection;
45 import java.security.Permissions;
46 import java.security.PrivilegedAction;
47 import java.security.ProtectionDomain;
48 import java.util.ArrayList;
49 import java.util.Arrays;
50 import java.util.Collections;
51 import java.util.Comparator;
52 import java.util.HashSet;
53 import java.util.Set;
54 import java.util.concurrent.ConcurrentHashMap;
55 import java.util.concurrent.ConcurrentMap;
56 import jdk.internal.misc.Unsafe;
57 import jdk.internal.reflect.CallerSensitive;
58 import jdk.internal.reflect.Reflection;
59 import jdk.internal.reflect.ReflectionFactory;
60 import sun.reflect.misc.ReflectUtil;
61 import jdk.internal.misc.SharedSecrets;
62 import jdk.internal.misc.JavaSecurityAccess;
63 import static java.io.ObjectStreamField.*;
64
65 /**
66 * Serialization's descriptor for classes. It contains the name and
67 * serialVersionUID of the class. The ObjectStreamClass for a specific class
68 * loaded in this Java VM can be found/created using the lookup method.
69 *
70 * <p>The algorithm to compute the SerialVersionUID is described in
71 * <a href="{@docRoot}/../specs/serialization/class.html#stream-unique-identifiers">
72 * Object Serialization Specification, Section 4.6, Stream Unique Identifiers</a>.
73 *
74 * @author Mike Warres
75 * @author Roger Riggs
76 * @see ObjectStreamField
77 * @see <a href="{@docRoot}/../specs/serialization/class.html">
78 * Object Serialization Specification, Section 4, Class Descriptors</a>
79 * @since 1.1
80 */
81 public class ObjectStreamClass implements Serializable {
82
|
40 import java.security.AccessControlContext;
41 import java.security.AccessController;
42 import java.security.MessageDigest;
43 import java.security.NoSuchAlgorithmException;
44 import java.security.PermissionCollection;
45 import java.security.Permissions;
46 import java.security.PrivilegedAction;
47 import java.security.ProtectionDomain;
48 import java.util.ArrayList;
49 import java.util.Arrays;
50 import java.util.Collections;
51 import java.util.Comparator;
52 import java.util.HashSet;
53 import java.util.Set;
54 import java.util.concurrent.ConcurrentHashMap;
55 import java.util.concurrent.ConcurrentMap;
56 import jdk.internal.misc.Unsafe;
57 import jdk.internal.reflect.CallerSensitive;
58 import jdk.internal.reflect.Reflection;
59 import jdk.internal.reflect.ReflectionFactory;
60 import jdk.internal.access.SharedSecrets;
61 import jdk.internal.access.JavaSecurityAccess;
62 import sun.reflect.misc.ReflectUtil;
63 import static java.io.ObjectStreamField.*;
64
65 /**
66 * Serialization's descriptor for classes. It contains the name and
67 * serialVersionUID of the class. The ObjectStreamClass for a specific class
68 * loaded in this Java VM can be found/created using the lookup method.
69 *
70 * <p>The algorithm to compute the SerialVersionUID is described in
71 * <a href="{@docRoot}/../specs/serialization/class.html#stream-unique-identifiers">
72 * Object Serialization Specification, Section 4.6, Stream Unique Identifiers</a>.
73 *
74 * @author Mike Warres
75 * @author Roger Riggs
76 * @see ObjectStreamField
77 * @see <a href="{@docRoot}/../specs/serialization/class.html">
78 * Object Serialization Specification, Section 4, Class Descriptors</a>
79 * @since 1.1
80 */
81 public class ObjectStreamClass implements Serializable {
82
|