勉強が進むにつれて、
OCJ-Pの全体像が見えてきます。
それは同時に、Javaの全体像が見えてくること。
なんとなく、「ああ、Javaってこういうことなんだ」
と感じたら、そろそろ合格が近づいてきている証拠です。
Javaの本質は、オブジェクト指向という一点に尽きます。
オブジェクト指向の本質を理解するには、
クラスを理解し尽くすこと。
そこに集約されるのではないでしょうか。
そもそもJavaは、プログラミング言語としての歴史は浅いです。
ですので、先代のプログラミング言語である、
C言語やC++などの延長上にあります。
ですから、Javaを理解するときには、
C言語やC++についても、
理解をすることになります。
OCJ-Pを勉強するとき、
以下のことを頭の片隅に置いといて下さい。
Javaの理解
1.Java以前のプログラミング言語の基礎的理解
+
2.Java特有の仕様の理解
さらに換言・細分化できます。
1.は、構造化プログラミングの理解と言えます。
構造化プログラミングとは、
プログラムの流れを以下の3つに分けることです。
1-1.順次処理 (ソースは上から下に実行される)
1-2.条件分岐 (If文)
1-3.繰り返し処理(For文、While文)
2.は非常に重要で、細かく分けると、
2-1.データの型の理解
2-2.オブジェクト指向の理解
に分けられます。
2-2.はさらに細分化されます。
2-2-1.カプセル化(情報隠蔽)
2-2-2.継承
2-2-3.ポリモーフィズム(多様態)
OCJ-Pでは特に2が大切になります。
なぜなら2こそが、JavaがJavaたる所以だからです。
1:2 = 2:8 の割合で重要です。
さらに、
2-1:2-2 = 2:8であり、
2-2-1:2-2-2:2-2-3 = 2:4.5:3.5
というのが、私の印象です。
2-2を理解するということが、
冒頭で挙げたクラスを理解し尽くすことであり、
クラスの機能は2-2-1~3の3つが重要です。
まとめると、
Javaはプログラミング言語の進化の歴史の上にあるので、
Javaを理解するということは、
Java以前の理解とJava特有の理解が必要である。
OCJ-PではJava特有の理解が大きく問われる。
ということになります。