Java lançando um objeto para uma interface que não está implementada

Encontrei a seguinte pergunta no meu livro de estudo e um pouco confusa:

Dado o código a seguir, qual opção, se usada para substituir/* INSERT CODE HERE */, habilitará uma variável de referência do tipoRoamable para se referir a um objeto doPhone classe? (Selecione uma opção.)

interface Roamable{}
class Phone {}
class Tablet extends Phone implements Roamable {
    //INSERT CODE HERE
}

As opções são:

Roamable var = new Phone();Roamable var = (Roamable)Phone();Roamable var = (Roamable)new Phone();Porque interfaceRoamable e classePhone são independentes, uma variável de referência do tipoRoamable não pode se referir a um objeto de classePhone.

Eu pensei que a opção correta é 4, no entanto, diz que é 3.

Mas,Phone não implementaRoamable interface, então você não pode transmitir, pode?

questionAnswers(2)

yourAnswerToTheQuestion