Java HTTP getResponseCode retorna 200 para URL inexistente

Eu esperava que esse código retornasse um 404, mas produz a saída:

"O código de resposta é 200"

Seria possível aprender a diferenciar entre páginas da web existentes e inexistentes. . . Muito obrigado

    try
    {
    // create the HttpURLConnection
    URL url = new URL("http://www.thisurldoesnotexist");
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();

    System.out.println("Response code is " + connection.getResponseCode());
    }

questionAnswers(5)

yourAnswerToTheQuestion