out.write((message.length >> BYTEMASK) & BYTEMASK);
        out.write(message.length & BYTEMASK);
        
这里肯定弄错了,都没BYTESHIFT,这个意思是输出长度。其实不用这么复杂。直接
out.write(message.length)就ok了。