Inheritance: java.nio.Buffer, java.lang.Comparable
        public override LongBuffer Put(LongBuffer src)
        {
            if (src is DirectLongBufferU)
            {
                if (src == this)
                {
                    throw new IllegalArgumentException();
                }
                DirectLongBufferU sb = (DirectLongBufferU)src;

                int spos = sb.Position();
                int slim = sb.Limit();
                assert(spos <= slim);
                int srem = (spos <= slim ? slim - spos : 0);

                int pos = Position();
                int lim = Limit();
                assert(pos <= lim);
                int rem = (pos <= lim ? lim - pos : 0);

                if (srem > rem)
                {
                    throw new BufferOverflowException();
                }
                @unsafe.copyMemory(sb.Ix(spos), Ix(pos), (long)srem << 3);
                sb.Position(spos + srem);
                Position(pos + srem);
            }
            else if (src.Hb != null)
            {
                int spos = src.Position();
                int slim = src.Limit();
                assert(spos <= slim);
                int srem = (spos <= slim ? slim - spos : 0);

                Put(src.Hb, src.Offset + spos, srem);
                src.Position(spos + srem);
            }
            else
            {
                base.Put(src);
            }
            return(this);
        }
 public override LongBuffer Put(LongBuffer src)
 {
     throw new ReadOnlyBufferException();
 }