>>800
>で、その抽象クラスの参照型変数に、サブクラスのインスタンスを参照させると。
>間違ってます?

間違ってない。
てか、これが理解できていてるなら、下のプログラムも理解できるだろ??

>抽象クラスは、サブクラスを定義して使うもんですよね

そう。abstractクラスは、インスタンスを作れない。
今回の場合の urlObj.openConnection() は、
URLConnection のサブクラスの HttpURLConnection の、さらにサブクラスの
インスタンス(への参照)を返している。
ところが、urlObj.openConnection() は、戻り値が URLConnection(参照型)なので、
このままだと、disconnect() は使えない。
なので、わざわざ HttpURLConnection にキャストして、HttpURLConnection(参照型)に
入れているわけだ。
これでいいか?