スゴ技

平成23年度 秋 基本情報技術者試験 【問11】(その2)

Blog:IT・情報処理BLOG |

ソフトⅡコース担当 ブログのおにーさまこと高橋です。

今年も残るところ1週間になりました。なんとかJavaの問題解説後半部分完了です。

それでは、前回の続きの空欄dから。

空欄d
プログラムの説明の中のクラスName及びAddressの説明(2)(4)より、メソッド「meets」は、インスタンスが引数で指定された検索条件に合致するかどうかを判定します。従って、引数は検索条件を表すデータ型ということなので、「SearchCriteria」型となります。空欄dにはオの「SearchCriteria」が入ります。
meetsメソッドを呼び出しているのは、AddressBookクラスのmeetsAnyOfメソッドとmeetsAllOfメソッドです。meetsAnyOfメソッドで見ると、
if(entry.meets(sc))
という使い方をしています。scは外側の拡張for文
for(SearchCriteria sc : criteria){
で宣言されており、SearchCriteria型です。このことからも空欄には「SearchCriteria」が入ることがわかります。

空欄e
検索条件は、インスタンスが名前(Name)と住所(Address)では異なります。どちらの条件かによって呼び出すmeetsメソッドが異なります。そこで、引数がどちらの条件であるかを判定する必要があります。
instanceof演算子は、左辺のインスタンスが右辺の型のオブジェクトであるかを判定します。
if(criteria instanceof Name.Criteria)
は、criteriaがName.Criteria型であるかを判定しています。つまり、名前の条件であれば
name.meets((Name.Criteria)criteria)
を実行します。空欄eを含む条件は、もう一方の住所の検索条件であるかの判定となります。従って、空欄eにはアの「Address.Criteria」が入ります。

設問2
プログラムの説明の中のクラスName及びAddressの説明(1)(3)より、検索条件に含めないときはnullを指定することになっています。イとオが解答となります。

2011年(平成23年度)秋期の解説

Date:

神戸電子の
IT・情報処理学科
についてもっと知りたい!

Webアプリケーション等のシステム管理、設計、開発が行える総合的なITエンジニアを育成する学科です。

学科紹介を見る (神戸電子サイト)

学科紹介イメージ
Info神戸電子からのお知らせ

Tagタグ

Teamライターチーム紹介

神戸電子オフィシャルSNS

オープンキャンパスなどの
誰でも参加OKの楽しいイベント
やブログの最新記事などお届けします!

ページの上へ移動