¿Cómo obtener el valor de un bit en una determinada posición desde un byte?

Si tengo un byte, ¿cómo se vería el método para recuperar un bit en una posición determinada?

quí está lo que sé, y no creo que funcione.

public byte getBit(int position) {
    return (byte) (ID >> (position - 1));
}

dóndeID es el nombre del byte del que estoy recuperando información.

Respuestas a la pregunta(8)

Su respuesta a la pregunta