Upload
yukamu-tomita
View
575
Download
0
Embed Size (px)
Citation preview
ゆかむは
Javaプログラマであるか
ゆかむって?
Twitter:@tmybj不動産業、歯科助手、歯科医療機器メーカー法務部事務を経て、現在は幼稚園で園内SEをしています。
学生時代のアクセス・Excelのマクロ→不動産業の電子会計業務→歯科医院電子レセプト・会計業務→法務部でデータベース作成・HP作成→幼稚園にてHP作成
Javaとの出会い
名前はずっと知ってました。でもよくわからず、かつてC言語を独学でやろうとして挫折した経験もあり(´・ω・`)ショボーンできないと思ってました。そんな時、旦那と出会い、「プログラマって何してるの?」「僕はJavaを使って仕事してたよ」「Java!教えて!!!」Javaプログラマになりたい!と思いました。
そんなある時、
こんなブログをみつけました!
http://d.hatena.ne.jp/shuji_w6e/20110305/1299288660
『Javaプログラマであるかを見分ける10の質問』
Σ(´∀`;) こ、これは・・・・!
『経験が3年程度あれば、問題なく答えられるはずです』
2010年の後半から勉強をはじまりました。
今、ちょうど3年目に差し掛かるくらい・・・?
ゆかむは、果たしてJavaプログラマなのでしょうか
はっきりさせる時がきた!(`・ω・´)シャキーン
一問ごとに、A.何も調べたり見たいしないで解答
B.その後、30分以内で調べて解答
しています。
一問づつ発表後、「せーの!」といいますので、1.2.どちらかでも、まぁ合格としてもいいでしょう→大きくまる!して下さい。
全然ダメ不合格→大きくバツして下さい!
ご協力お願いします!!
判定について
過半数の方が『まる!』だった場合、その問題を合格と
します!
『80%程度は回答できるプログラマを採用したい所です。』
と、ブログにありますので、
10問中8問以上合格であれば、
『ゆかむはJavaプログラマである!』5問以上であった場合は、『見習い』
4問以下であった場合は、『失格!』バツゲーム発動!
注意!
・スライドに書いてあるものだけで 判断してください。(補足や言い訳なしです。)・違うよーとか惜しいなと思っても 口に出さないでください。(他の人の判断が左右されてしまうかもしれないので、判定のあとにお話聞かせてください。)・笑ってはいけません。(ゆかむが泣きます。)
下記質問にそれぞれ50文字以内を目安に簡単に説明すること。
1. ==演算子とequalsメソッドの違いは何か?
A.何も見ないで解答
equalsメソッドというものを知らないけれど、わざわざメソッドになっているということはきっとゴニョゴニョできるのだろう。
==演算子は比較のみ、equalsメソッドは何かさせることができる!
B.調べた結果
==演算子はプリミティブ型を比較するのに適している
equalsメソッドは、オブジェクト型の値を比較するのに使用する。
参照元が違う場合、==演算子では、falseがかえる。
参照元が違っても値が同じかどうか知りたい時には、equalsメソッドを
使わないといけない。どうですか?せーの!
2.文字列の+演算子による連結とStringBuilderを使った連結の違い
を説明せよ。
A.何も見ないで解答
StringBuilder知らないけど+演算子みたいにつなげるものかな?
んー・・・わからない。
B.調べた結果
StringBuilderは可変長なので、文字列を何度もつなげるのに効率がいい。
+で文字列をつなげると、固定長なので、新しいオブジェクトとして
つながった文字列を作ってしまうので、何度もつなげるのには非効率。
どうですか?せーの!
3.List<Integer>のようにジェネリクス型を使う 主たる目的は何か?
A.何も見ないで解答
違うのんが入らへんようにできるから!
B.調べた結果
getで取ってくる時にキャストしないといけない。
何入ってるかわからなくて怖い!
どうですか?せーの!
4.オブジェクトがガベージコレクション(GC)される主たる条件は何か?
A.何も見ないで解答
どこからも参照されなくなったら
B.調べた結果
どこからも参照されなくなったら!><
どうですか?せーの!
5.チェック例外と非チェック例外の違いを型と例外処理の観点で説明せよ。
A.何も見ないで解答
例外?トライとキャッチ?例外はかいといた方が、どうして例外になったのかわかるからええねん。
B.調べた結果
チェック例外は例外処理しないとコンパイルエラーになる。非チェック例外はしなくてもいい。
どうですか?せーの!
6.フィールドのアクセス修飾子をprivateにしgetter/setterメソッドを提供する事でフィールドを参照する設計方針を取る主な理由を説明せよ
A.何も見ないで解答
そりゃ、中いじられたら怖いからじゃないの?前に「誰でも財布の中に勝手に手を入れられるようになってる状態と一緒だよ」って教えてもらったです!B.調べた結果
フィールド内のデータを守るためにprivateにする。getter/setterで値を出し入れすることで、変なものが入れられようとしたりしたらチェックすることができるから。
どうですか?せーの!
7.NullPointerExceptionが発生するのは主にどういう状況か?
A.何も見ないで解答
データが何にも無い時じゃないのん?
B.調べた結果
定義されてない値であるnull値の変数を参照しようとした時の例外。
どうですか?せーの!
8.オーバーロードとオーバーライドの違いは何か?
A.何も見ないで解答
おーばーしてロードやから、親クラスのん使う。おーばーしてライドやから、親クラスのん書き換える。
B.調べた結果
オーバーライドは、親クラスで定義されているメソッドを子クラスで機能を増やしたりして再定義すること。オーバーロードは同じクラスで同じ名前のメソッドつくること
どうですか?せーの!
9.コンストラクタとは何か?
A.何も見ないで解答
いっつもでてくるクラスと同じ名前の人
B.調べた結果
特殊なメソッドでインスタンス化する時に呼ばれるもの。
どうですか?せーの!
10.インターフェイスを利用する目的を1つ説明せよA.何も見ないで解答
さぁ?なんでやろ?いっぱいの人で、たくさん作っても楽なようにかな?
B.調べた結果
オブジェクト指向するため。機能の概要と実装を分けます。オーバーライドすることで色々なことに対応できる。大人数での開発、多くの変更に強いプログラムになる。ポリモーフィズムっていうのができる。
どうですか?せーの!
結果はっぴょ~!!
判定のおさらい
『80%程度は回答できるプログラマを採用したい所です。』
と、ブログにありますので、
10問中8問以上合格であれば、
『ゆかむはJavaプログラマである!』5問以上であった場合は、『見習い』
4問以下であった場合は、『失格!』バツゲーム発動!
ご協力ありがとうございました。
きっと、言いたいこといっぱいになっていることでしょう。
お時間まだ大丈夫ですか?
「俺に言わせろ!」
どうぞ、おもうぞんぶん言ってください!!!
ありがとうございました。
どうぞ、これからもよろしくおねがいします!
プログラム大好き、ゆかむでした!(*´∀`*)