平成30年度 秋期 午前 問8
ソフトウェア
Java の特徴はどれか。
- アオブジェクト指向言語であり,複数のスーパクラスを指定する多重継承が可能である。
- イ整数や文字は常にクラスとして扱われる。
- ウポインタ型があるので,メモリ上のアドレスを直接参照できる。
- エメモリ管理のためのガーベジコレクションの機能がある。
答えと解説を見る
✓ これが正解エメモリ管理のためのガーベジコレクションの機能がある。
解説
使い終えた記憶領域を、自動で回収する仕組みを持ちます。
Java は、確保した記憶領域をどこからも参照されなくなった時点で自動的に回収します。この回収の働きをガーベジコレクションと呼びます。開発者が解放を書き忘れて空き容量が減り続ける事故を、言語の側で防ぐ狙いがあります。解放のたびに手続きを書かなくてよいので、書く量が減り、取り違えも起きにくくなります。一方で、回収がいつ動くかは処理系に委ねられ、その間は処理が一時的に止まります。応答の速さを厳しく求められる場面では、この停止時間が設計上の検討事項になります。自動で片付く代わりに、片付く時期を選べないという性質を持っているわけです。参照が残っている限り回収されないので、不要になった参照を残す書き方には注意が必要です。容量が尽きる事故は減りますが、まったく起きなくなるわけではありません。
ほかの選択肢はなぜ違うのか
- アオブジェクト指向言語であり,複数のスーパ…:複数の親クラスを同時に指定する多重継承は、この言語では認められていません。同じ名前の要素が複数の親から届くと、どちらを使うか決められなくなるためです。代わりに、実装を持たない約束事だけを複数受け取る手段が用意されています。
- イ整数や文字は常にクラスとして扱われる。:整数や文字を表す基本型は、クラスとは別の仕組みとして用意されています。扱いをそろえたいときのために、これらを包む専用のクラスが別に定義されています。常にクラスとして扱われるわけではなく、二つの表し方が併存しています。
- ウポインタ型があるので,メモリ上のアドレス…:記憶上の番地を直接指し示す型は用意されていません。番地を自由にいじれると、想定外の場所を書き換える事故が起こりやすくなります。安全側に倒すため、参照を通してのみ対象へ届く形に限られています。番地の計算は書けません。
出典:平成30年度 秋期 基本情報技術者試験 午前 問8
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)