已经移植好的java虚拟机

源代码在线查看: linenumbertableattribute.java

软件大小: 5553 K
上传用户: norwaybaby
关键词: java 移植 虚拟机
下载地址: 免注册下载 普通下载 VIP

相关代码

				/*				 *	LineNumberTableAttribute.java	1.4	02/09/27				 *				 * Copyright (c) 1997 Sun Microsystems, Inc. All Rights Reserved.				 *				 * This software is the confidential and proprietary information of Sun				 * Microsystems, Inc. ("Confidential Information").  You shall not				 * disclose such Confidential Information and shall use it only in				 * accordance with the terms of the license agreement you entered into				 * with Sun.				 *				 * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE				 * SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE				 * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR				 * PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR ANY DAMAGES				 * SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING				 * THIS SOFTWARE OR ITS DERIVATIVES.				 * Use is subject to license terms.				 */								package components;				import java.io.DataOutput;				import java.io.DataInput;				import java.io.IOException;				import util.DataFormatException;								/*				 * A class to represent the LineNumber table Attribute				 * of a method's code.				 */								public				class LineNumberTableAttribute extends Attribute				{				    public LineNumberTableEntry	data[];								    public				    LineNumberTableAttribute( UnicodeConstant name, int l, LineNumberTableEntry d[] ){					super( name, l );					data = d;				    }								    protected int				    writeData( DataOutput o ) throws IOException{					int n = data.length;					o.writeShort( n );					for ( int i = 0; i < n; i++ ){					    data[i].write( o );					}					return 2+LineNumberTableEntry.size*n;				    }												    public static Attribute				    readAttribute( DataInput i, ConstantObject t[] ) throws IOException{					UnicodeConstant name;									name = (UnicodeConstant)t[i.readUnsignedShort()];					return finishReadAttribute( i, name );				    }								    //				    // for those cases where we already read the name index				    // and know that its not something requiring special handling.				    //				    public static Attribute				    finishReadAttribute( DataInput in, UnicodeConstant name ) throws IOException {					int l;					int n;					LineNumberTableEntry d[];									l  = in.readInt();					n  = in.readUnsignedShort();					d = new LineNumberTableEntry[ n ];					for ( int i = 0; i < n; i++ ){					    d[i] = new LineNumberTableEntry( in.readUnsignedShort(), in.readUnsignedShort() );					}					return new LineNumberTableAttribute( name, l, d );				    }								}							

相关资源