検索
連載

Java SE 5.0の新機能、staticインポートを習得するソースコードで学ぶ SJC-P 5.0 ドリル(2)(1/2 ページ)

本連載は、サン・マイクロシステムズ認定のJava資格Sun Certified Programmer for Java 2 Platform 5.0(SJC-P5.0)に対応しています。最新の出題傾向に基づいて、ソースコードの問題を中心に毎回模擬問題を1問出題します。ソースコードに慣れながら、SJC-P合格を目指して頑張りましょう。

PC用表示
Share
Tweet
LINE
Hatena

 連載第2回は、Java SE 5.0で新たに導入された、staticインポートからの出題です。

staticインポートとは

 従来、static変数やstaticメソッドを利用する場合、クラス名を付けてアクセスする必要がありました。ここでは、staticメソッドを持つクラス(ソースコード1-1)を利用しているクラス(ソースコード1-2)の例を見てみましょう。 ※これらのクラスは異なるパッケージに属しています。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 上記のように、従来ではstaticメンバを利用するときには「クラス名.メソッド名」や、「クラス名.変数名」と記述する必要がありました。Java言語で提供されているjava.lang.MathクラスのstaticメンバであるPI定数を利用する場合も、java.langパッケージになるので、import文は不要になるものの、その都度、Math.PIと記述する必要がありました。

 staticインポートとは、static変数やstaticメソッドをクラス名を指定せずに使用する機能です。これにより、使用するたびにクラス名を記述する必要がなくなります。キーワードとしてimport staticを使用し、完全修飾名およびインポートしたいstatic変数やstaticメソッドを指定します。 ※完全修飾名とは、「パッケージ名.クラス名」といった正式なクラス名称のことです。

【構文】

import static パッケージ名.クラス名.static変数名;
import static パッケージ名.クラス名.staticメソッド名;
import static パッケージ名.クラス名.*;

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

【構文】 import static パッケージ名 . クラス名 . static メソッド名;

演習問題

 以下の問題を考えてみてください。解答と解説は次のページにあります。

問題

 次のソースコードがあります。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 また別のファイルとして次のソースコードがあります。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 Testクラスを正しくコンパイル、実行し、実行結果として20を出力するために、空欄(1)に入るソースコードはどれですか? 1つ選択してください。

A.import static com.it.*;
B.static import com.it.*;
C.import static com.it.Calc;
D.static import com.it.Calc;
E.import static com.it.Calc.sum;
F.static import com.it.Calc.sum;

       | 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る