Since I wrote this code....
private int[] masks = {0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01};
Generally, a mask is a constant value that's used in bit manipulation to get a portion of bits from a value. If you have an 8-bit value and want only the value of the first two bits, you AND it with a mask of the bits 00000011.
These masks are single bits used to get at each bit position in a byte. You can see in the code that the operation & is used on a value with each mask. & is the bitwise AND operator.
By the way it's declared, I'm guessing you mean 0x08. The 0x prefix specifies that the value is in hexadecimal encoding, just a convenient way for specifying byte values. 0x08 would be the bits 00000100 or the single bit for the 3rd position. |