
ソースコードで学ぶ SJC-P 5.0 ドリル
第10回 オーバーロードを習得する
山本道子(有限会社 Ray)
2008/6/17
| 本連載は、サン・マイクロシステムズ認定のJava資格Sun Certified Programmer for Java 2 Platform 5.0(SJC-P5.0)に対応しています。最新の出題傾向に基づいて、ソースコードの問題を中心に毎回模擬問題を1問出題します。ソースコードに慣れながら、SJC-P合格を目指して頑張りましょう。 |
連載第10回で最終回を迎える今回は、オーバーロードに関する出題です。
| ソースコードで学ぶ SJC-P 5.0 ドリル 各回のインデックス |
| 第1回 Java SE 5.0の新機能、列挙型を習得する |
| 第2回 Java SE 5.0の新機能、staticインポートを習得する |
| 第3回 thisキーワードを使いこなす |
| 第4回 Java SE 5.0の新機能、拡張for文を習得する |
| 第5回 再利用性を高める抽象クラスを習得する |
| 第6回 参照型の一種、インターフェイスを習得する |
| 第7回 基本データ型の型変換を習得する |
| 第8回 参照型の型変換を習得する |
| 第9回 アクセス制御を習得する |
| 第10回 オーバーロードを習得する |
■オーバーロード
1つのクラス内に、同じ名前のメソッドやコンストラクタを複数定義することができます。これをオーバーロードと呼びます。
ただし、それぞれのメソッドが別物であることを判断するために、引数の並び、型、数が異なっていることが条件です。
【構文】メソッドのオーバーロード |
| void method(){ } void method(int a) { } void method(int a, int b) { } void method(String s) { } |
【構文】コンストラクタのオーバーロード |
| class Employee { Employee() { } Employee(int id) { } Employee(int id, String name) { } |
class Foo {
int x; int y;
// 引数なしの display() メソッド
public void display() {
System.out.println("-- display()");
System.out.println("x = " + x);
System.out.println("y = " + y);
}
// 引数が 2 つの display() メソッド
public void display(int x, int y) {
this.x = x;
this.y = y;
System.out.println("-- display(int x, int y)");
System.out.println("x = " + x);
System.out.println("y = " + y);
}
public void setData(int x, int y) {
this.x = x; this.y = y;
}
}
class Sample1 {
public static void main(String args[]) {
Foo obj = new Foo();
obj.setData(10,20);
// 引数なしの display() メソッドの呼び出し
obj.display();
// int 型の引数を 2 つ取る display() メソッドの呼び出し
obj.display(300,400);
}
} |
| サンプルコード1(Sample1.java) |
C:\sample>java Sample1 -- display() x = 10 y = 20 -- display(int x, int y) x = 300 y = 400 C:\sample> |
| サンプルコード1の実行結果 |
|
以下の問題を考えてみてください。解答と解説は次のページにあります。
|
次のプログラムをコンパイルし、実行するとどうなりますか? 1つ選択してください。
1. public class Test {
2. public void method() {}
3. public int method() { return 0;}
4. public double method(int a){ return 0.0; }
5. }
|
A.実行時エラー
B.2行目にエラーがあるためコンパイルエラー
C.3行目にエラーがあるためコンパイルエラー
D.4行目にエラーがあるためコンパイルエラー
E.コンパイルは成功し、ほかのクラスからこれらのメソッドは問題なく呼び出しができる
| 解説とさらにもう一歩、オーバーロードの注意点 |
| 今回のインデックス |
| オーバーロードを理解しよう (1ページ) |
| 解説とさらにもう一歩、オーバーロードの注意点(2ページ) |
ソースコードで学ぶ SJC-P 5.0 ドリル バックナンバー
@IT Special 注目企業
@IT Special ラーニング
関連キーワード
|
|
@IT自分戦略研究所 新着記事
スキルアップに役立つサービス
| スキルアップに役立つ問題を無料で出題 | |
| ITスキル研修4000件、最新情報の検索できます |
キャリアアップ
スポンサーからのお知らせ
・ケ・ュ・チマツ、クヲオ貍シ・ケ・ン・・オ。シ
- - PR -
イベントカレンダー
お勧め求人情報
転職/派遣情報を探す
@IT Special ラーニング

PHP技術者認定の最上位、ウィザード試験が5月より開始