(bitoutputstream) implement a class named bitoutputstream, as shownin

(BitOutputStream) Implement a class named BitOutputStream, as shown

in Figure 19.20, for writing bits to an output stream. The writeBit(char

bit) method stores the bit in a byte variable. When you create a

BitOutputStream, the byte is empty. After invoking writeBit(‘1’), the

byte becomes 00000001. After invoking writeBit(“0101”), the byte

becomes 00010101. The first three bits are not filled yet. When a byte is full, it

is sent to the output stream. Now the byte is reset to empty. You must close the

stream by invoking the close() method. If the byte is not empty and not full,

the close() method first fills the zeros to make a full 8 bits in the byte, and

then output the byte and close the stream. For a hint, see Exercise 4.46. Write a

test program that sends the bits 010000100100001001101 to the file named