当前位置: 首页>>代码示例>>Java>>正文


Java ObjectStreamConstants.SC_WRITE_METHOD属性代码示例

本文整理汇总了Java中java.io.ObjectStreamConstants.SC_WRITE_METHOD属性的典型用法代码示例。如果您正苦于以下问题:Java ObjectStreamConstants.SC_WRITE_METHOD属性的具体用法?Java ObjectStreamConstants.SC_WRITE_METHOD怎么用?Java ObjectStreamConstants.SC_WRITE_METHOD使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在java.io.ObjectStreamConstants的用法示例。


在下文中一共展示了ObjectStreamConstants.SC_WRITE_METHOD属性的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: read_Classdata

public void read_Classdata( DataInputStream dis, Instance inst ) throws IOException
{
	ArrayList<ClassDesc> classes = new ArrayList<ClassDesc>();
	inst.classdesc.getHierarchy( classes );
	Map<ClassDesc, Map<Field, Object>> alldata = new HashMap<ClassDesc, Map<Field, Object>>();
	Map<ClassDesc, List<Content>> ann = new HashMap<ClassDesc, List<Content>>();
	for ( ClassDesc cd : classes ) {
		Map<Field, Object> values = new HashMap<Field, Object>();
		if ( ( cd.descflags & ObjectStreamConstants.SC_SERIALIZABLE ) != 0 ) {
			if ( ( cd.descflags & ObjectStreamConstants.SC_EXTERNALIZABLE ) != 0 ) {
				throw new IOException( "SC_EXTERNALIZABLE & SC_SERIALIZABLE encountered" );
			}
			for ( Field f : cd.fields ) {
				Object o = read_FieldValue( f.type, dis );
				values.put( f, o );
			}
			alldata.put( cd, values );
			if ( ( cd.descflags & ObjectStreamConstants.SC_WRITE_METHOD ) != 0 ) {
				if ( ( cd.descflags & ObjectStreamConstants.SC_ENUM ) != 0 ) {
					throw new IOException( "SC_ENUM & SC_WRITE_METHOD encountered!" );
				}
				ann.put( cd, read_classAnnotation( dis ) );
			}
		}
		else if ( ( cd.descflags & ObjectStreamConstants.SC_EXTERNALIZABLE ) != 0 ) {
			if ( ( cd.descflags & ObjectStreamConstants.SC_SERIALIZABLE ) != 0 ) {
				throw new IOException( "SC_SERIALIZABLE & SC_EXTERNALIZABLE encountered" );
			}
			if ( ( cd.descflags & ObjectStreamConstants.SC_BLOCK_DATA ) != 0 ) {
				throw new EOFException( "hit externalizable with nonzero SC_BLOCK_DATA; can't interpret data" );
			}
			else {
				ann.put( cd, read_classAnnotation( dis ) );
			}
		}
	}
	inst.annotations = ann;
	inst.fielddata = alldata;
}
 
开发者ID:kartoFlane,项目名称:superluminal2,代码行数:39,代码来源:JDeserialize.java


注:本文中的java.io.ObjectStreamConstants.SC_WRITE_METHOD属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。