home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 1999 March / maximum-cd-1999-03.iso / Feature / Lotus / ORGANIZE / COMPNENT / LTOUIN21.ZIP / sunw / demo / classfile / RefConstant.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-03-12  |  1.6 KB  |  44 lines

  1. package sunw.demo.classfile;
  2.  
  3. import java.io.DataOutputStream;
  4. import java.io.IOException;
  5.  
  6. class RefConstant extends ConstantPoolEntry {
  7.    private ClassConstant clazz;
  8.    private NameAndTypeConstant nandt;
  9.  
  10.    protected RefConstant(byte var1, String var2, String var3, String var4, ClassFile var5) {
  11.       super(var1, var5);
  12.       this.clazz = new ClassConstant(var2, var5);
  13.       this.nandt = new NameAndTypeConstant(var3, var4, var5);
  14.       ((ConstantPoolEntry)this).addToConstantPool();
  15.    }
  16.  
  17.    public boolean equals(Object var1) {
  18.       if (!(var1 instanceof RefConstant)) {
  19.          return false;
  20.       } else {
  21.          RefConstant var2 = (RefConstant)var1;
  22.          return this.clazz.equals(var2.clazz) && this.nandt.equals(var2.nandt);
  23.       }
  24.    }
  25.  
  26.    ClassConstant getClassObject() {
  27.       return this.clazz;
  28.    }
  29.  
  30.    NameAndTypeConstant getNameAndType() {
  31.       return this.nandt;
  32.    }
  33.  
  34.    public int hashCode() {
  35.       return this.clazz.hashCode() + this.nandt.hashCode();
  36.    }
  37.  
  38.    void write(DataOutputStream var1) throws IOException {
  39.       var1.writeByte(((ConstantPoolEntry)this).getTag());
  40.       var1.writeShort(this.clazz.getConstantPoolIndex());
  41.       var1.writeShort(this.nandt.getConstantPoolIndex());
  42.    }
  43. }
  44.