Javaプログラマー資格試験(OCJ-P) WEB講座 -4ページ目

Javaプログラマー資格試験(OCJ-P) WEB講座

Javaプログラマー資格(OCJ-P)を学習するブログです。

OCJ-P・Javaプログラマー資格をとりたい。
Javaプログラミングの入門者・初心者。

そんなあなたに、Javaプログラマー資格の取得に役立つ本質的な知識を、
分かりやすく解説していきます。

 思い出しました。
私が曖昧に覚えていたのは、階層を越えて継承したときの話。

class A{}
class B extends A{}
class C extends A{}

つまり、
A
└B
  └C

のとき、C is-a A と言えるのか?と言う話。
これはOKですね。
私は曖昧にしか理解していなかったので、
「もしかして、CはAを直接継承していないから、
C is-a Aとはいえないのかもな」と考えたのです。

これをしっかり理解するには、自分でソースを書くこと。
A a = new C();
と書いて、コンパイルエラーが起きなければ、OKですよね。

 また、複数のインターフェースを実装している場合、
また、インターフェースの特徴は、複数のインターフェースを実装できること。

つまり、
interface A{}
interface B{}
class C implements A,B{}
のとき、
C is-a A , C is-a Bが成立します。

「うーん。AとB両方揃ってはじめてCだから。
C is-a Aはなんか不完全だな。」

そんな風に考えたくなりませんか?
実際にソースを書いてどうなるか試してみてくださいね。
 試験に落ちたのは、精神的なダメージが大きかったです。
試験に合格して、勉強から解放されたい気分だったのですが、
また仕事終わってから、帰宅して勉強するのかとなると、
今までよく頑張っていたなぁ~と思いました。

一回落ちてへこたれずに、もう一度勉強を再開するのは、
とてもエネルギーがいるものです。

いつまでもへこんでられないので、
勉強を再開しますね。

 試験で解けなかったところを中心に、これから勉強していきます。
いろいろと思い出しながらやっていきます。

is-a関係とhas-a関係が出ました。
黒本ポケットでも出題されていて、
ほんまにこんなん出るんかいな?

と思っていたのですが、出ましたね。
is-a関係、has-a関係以外にも、
結合度と凝集度というのも出ました。

 is-a関係とhas-a関係はとても簡単です。
肝心なことは、オブジェクト指向の考え方と結びつけて覚えておくこと。

ずばり、
is-a関係は継承。
has-a関係はカプセル化。

と関係があります。

class A{}
class B extends A{}
のとき、B is-a Aです。

class A{
B b;
String str;
private void test(){};
}
のとき、A has-a Bであり、A has-a str , test です。

 実際の出題では、
Q.人間のトムは犬を飼っています。をあらわすのはどれか?
□人間 is-a トム
□トム is-a 人間
□犬 has-a トム
□トム has-a 犬
□どれでもない

というような感じで出題されていました。
英語で出題されていました。

ソースを書くとすれば、
class 人間{}
class トム extends 人間{
犬 inu;
}
ってところでしょうか。

簡単ですね。
何で間違えたのでしょうか。
悔やまれます。

こういうのは絶対に落とさないようにしましょう!!!



 落ちた原因は、ずばり「実力が合格水準に達していなかった。」
それにつきますね。当たり前ですけど。

見切り発車をしすぎたんです。
黒本ポケットがある程度できるようになったから、
「俺、受かるんじゃないか!?」
という過信が生まれていました。

はっきい言って、本番はやはり緊張します。
ですので、持てるパワーの8割しか出せません。

それにすごく感じたのですが、
黒本で問題解くのと、
本試験のコンピュータ上で問題解くのでは、
何かが違います。

問題の水準はそこまで大きく変わりません。
ですが、なんか本試験になると、
大きな壁が目の前に立ちはだかったような感覚になりました。

 一番やっておくべきだったのは、前回書いた黒本。
ポケットじゃなくて、普通の大きさの黒本です。

それを事前に受けておくことで、不合格は防げます。
7割とれなければ、受けなければいい話ですから。

 次にやっておけばよかったことは、
自分の『苦手つぶし』です。

私はなんとなくですが、実務で使ったことがなかった、
列挙型とか、アサーション、スレッド、
その辺はちょっと苦手意識を持っていました。

一応黒本ポケットの問題も解いたし、
言語規定やWebのリソースを読んだし、
Eclipseでコードを書いて動かしていたのだが、
やっぱり理解が浅かったんだな。

しかも、本番に規定を思い出せなかった。
曖昧に覚えていたから、間違ったんだ。

出て欲しくないなって思っていたのが、
やっぱり出てくれた。

それでその辺は見事に落とした。
苦手があると得点率が下がるので、
絶対に苦手分野は消しておきましょう。

OCJ-Pは、各分野から平均的に出題されるので、
出て欲しくないと思っている分野も、
まあ確実に出ると考えていいです。

 黒本ポケットレベルがきっちり押さえれていて、
しかるべきことをちゃんと覚えていたら、
合格できると感じました。

出題される内容は難しくないんですけど、
細かいところを理解できてるか問われています。

自分で疑問に感じたことは、
徹底的に調べて潰しておきましょう。

自分が疑問に感じたこと = 皆の理解が浅くなりやすいこと
なので、出題側としてはひっかけやすい。

とにかく言語規定に載っていることを、
曖昧ではなく、きっちり覚える。
それが出来たら、合格です!

私は曖昧でした!!!
3万円返して欲しい!

次は絶対合格だ!