OCJP Gold SE 7 移行試験のポイント - その6 言語の拡張 編 -

duke

皆さま。こん**は。

今回も引き続きOCJP Gold SE 7 移行試験のポイントをご紹介していきます。
OCJP Gold SE 7 資格移行試験の試験範囲ではJava SE 7の新機能にも焦点が当てられています。今回はJava SE 7の新機能の一つである言語の拡張(Project Coin)について説明します。

Java SE 7 ではProject Coin(JSR334)と呼ばれる言語仕様への小さな変更が行われています。Switch文でのStringの使用やアンダースコア(_)付きの数値リテラルとバイナリリテラル、例外処理への拡張(try-with-resources, マルチキャッチなど)、総称型の型推論の向上など大きな変更ではありませんがプログラミング効率を向上させる変更が含まれています。同時に可読性の高いコードを書きやすくなりますので保守性も向上することが期待できます。

言語の拡張に関する出題トピックの詳細はテスト内容チェックリストをご確認ください。


例題:
次の変数宣言であやまっているものはどれですか?

1. byte b = 54;
2. short s = 0x36;
3. int i = 066;
4. long l = 0b110110110110110110110110110110110; // 7362801078

正解:
4. long l = 0b110110110110110110110110110110110; // 7362801078


解説:
Java SE 7ではバイナリリテラルがサポートされます。10進数の54をバイナリリテラルで表現すると次のようになります。
 int i = 0b110110; または  int i = 0B110110;

例題でのポイントはlong型の値が10進数で7362801078であるという点です。7362801078は32bitで格納できる範囲を超えたリテラルなので、代入時には"L"または"l"が必要です。選択肢4.を正しく宣言すると以下のようになります。

  long aLong = 0b110110110110110110110110110110110L; // 7362801078

なお、選択肢2.と3.は10進数54の16進数表現と8進数表現です。



いかがでしょうか?例題ではバイナリリテラルと変数の代入の複合問題になっていました。本試験でもJava SE 7の新機能と既存のプログラマ試験の範囲を組み合わせるような出題が考えられますので、試験範囲外の部分でも関連知識は復習しておきましょう。


おすすめ研修:
Java SE 7 New Features
Java SE 7の新機能を体系的に学習したい方におすすめのコースです。

キャンペーン:
Upgrade to Java SE 7 Programmer(1Z0-805) 試験は既存のプログラマ資格(SJC-P, OCJ-P)をお持ちの方を対象としたJava SE 7資格への移行試験になります。今なら早期移行促進キャンペーンとして、試験を受験された方(合否は問いません!!)でお申込みいただいた方先着100名様に素敵な景品をさし上げております。


それではまた次回。

Comments:

Post a Comment:
Comments are closed for this entry.
About

Inside ORACLE MASTER - ORACLE MASTERに関連する最新情報をお届けします。

Search

Archives
« 4月 2014
  
1
2
3
4
5
6
7
8
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today