/** Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.** This code is free software; you can redistribute it and/or modify it* under the terms of the GNU General Public License version 2 only, as* published by the Free Software Foundation. Oracle designates this* particular file as subject to the "Classpath" exception as provided* by Oracle in the LICENSE file that accompanied this code.** This code is distributed in the hope that it will be useful, but WITHOUT* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License* version 2 for more details (a copy is included in the LICENSE file that* accompanied this code).** You should have received a copy of the GNU General Public License version* 2 along with this work; if not, write to the Free Software Foundation,* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.** Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA* or visit www.oracle.com if you need additional information or have any* questions.*/package java.io;/*** Constants written into the Object Serialization Stream.** @author unascribed* @since 1.1*/public interface ObjectStreamConstants {/*** Magic number that is written to the stream header.*/static final short STREAM_MAGIC = (short)0xaced;/*** Version number that is written to the stream header.*/static final short STREAM_VERSION = 5;/* Each item in the stream is preceded by a tag*//*** First tag value.*/static final byte TC_BASE = 0x70;/*** Null object reference.*/static final byte TC_NULL = (byte)0x70;/*** Reference to an object already written into the stream.*/static final byte TC_REFERENCE = (byte)0x71;/*** new Class Descriptor.*/static final byte TC_CLASSDESC = (byte)0x72;/*** new Object.*/static final byte TC_OBJECT = (byte)0x73;/*** new String.*/static final byte TC_STRING = (byte)0x74;/*** new Array.*/static final byte TC_ARRAY = (byte)0x75;/*** Reference to Class.*/static final byte TC_CLASS = (byte)0x76;/*** Block of optional data. Byte following tag indicates number* of bytes in this block data.*/static final byte TC_BLOCKDATA = (byte)0x77;/*** End of optional block data blocks for an object.*/static final byte TC_ENDBLOCKDATA = (byte)0x78;/*** Reset stream context. All handles written into stream are reset.*/static final byte TC_RESET = (byte)0x79;/*** long Block data. The long following the tag indicates the* number of bytes in this block data.*/static final byte TC_BLOCKDATALONG= (byte)0x7A;/*** Exception during write.*/static final byte TC_EXCEPTION = (byte)0x7B;/*** Long string.*/static final byte TC_LONGSTRING = (byte)0x7C;/*** new Proxy Class Descriptor.*/static final byte TC_PROXYCLASSDESC = (byte)0x7D;/*** new Enum constant.* @since 1.5*/static final byte TC_ENUM = (byte)0x7E;/*** Last tag value.*/static final byte TC_MAX = (byte)0x7E;/*** First wire handle to be assigned.*/static final int baseWireHandle = 0x7e0000;/******************************************************//* Bit masks for ObjectStreamClass flag.*//*** Bit mask for ObjectStreamClass flag. Indicates a Serializable class* defines its own writeObject method.*/static final byte SC_WRITE_METHOD = 0x01;/*** Bit mask for ObjectStreamClass flag. Indicates Externalizable data* written in Block Data mode.* Added for PROTOCOL_VERSION_2.** @see #PROTOCOL_VERSION_2* @since 1.2*/static final byte SC_BLOCK_DATA = 0x08;/*** Bit mask for ObjectStreamClass flag. Indicates class is Serializable.*/static final byte SC_SERIALIZABLE = 0x02;/*** Bit mask for ObjectStreamClass flag. Indicates class is Externalizable.*/static final byte SC_EXTERNALIZABLE = 0x04;/*** Bit mask for ObjectStreamClass flag. Indicates class is an enum type.* @since 1.5*/static final byte SC_ENUM = 0x10;/* *******************************************************************//* Security permissions *//*** Enable substitution of one object for another during* serialization/deserialization.** @see java.io.ObjectOutputStream#enableReplaceObject(boolean)* @see java.io.ObjectInputStream#enableResolveObject(boolean)* @since 1.2*/static final SerializablePermission SUBSTITUTION_PERMISSION =new SerializablePermission("enableSubstitution");/*** Enable overriding of readObject and writeObject.** @see java.io.ObjectOutputStream#writeObjectOverride(Object)* @see java.io.ObjectInputStream#readObjectOverride()* @since 1.2*/static final SerializablePermission SUBCLASS_IMPLEMENTATION_PERMISSION =new SerializablePermission("enableSubclassImplementation");/*** Enable setting the process-wide serial filter.** @see java.io.ObjectInputFilter.Config#setSerialFilter(ObjectInputFilter)* @since 9*/static final SerializablePermission SERIAL_FILTER_PERMISSION =new SerializablePermission("serialFilter");/*** A Stream Protocol Version. <p>** All externalizable data is written in JDK 1.1 external data* format after calling this method. This version is needed to write* streams containing Externalizable data that can be read by* pre-JDK 1.1.6 JVMs.** @see java.io.ObjectOutputStream#useProtocolVersion(int)* @since 1.2*/public static final int PROTOCOL_VERSION_1 = 1;/*** A Stream Protocol Version. <p>** This protocol is written by JVM 1.2.** Externalizable data is written in block data mode and is* terminated with TC_ENDBLOCKDATA. Externalizable class descriptor* flags has SC_BLOCK_DATA enabled. JVM 1.1.6 and greater can* read this format change.** Enables writing a nonSerializable class descriptor into the* stream. The serialVersionUID of a nonSerializable class is* set to 0L.** @see java.io.ObjectOutputStream#useProtocolVersion(int)* @see #SC_BLOCK_DATA* @since 1.2*/public static final int PROTOCOL_VERSION_2 = 2;}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。