13‐1
シグニチャを説明しなさい
13‐2
2つのメソッドのシグニチャが同じかどうか答えなさい。
(1)
void abc(){...}
void def(){...}
(2)
void abc(int v){...}
void abc(int v1, int v2){...}
(3)
void abc(int v1){...}
void abc(long v1){...}
(4)
void abc(int v1){...}
void abc(int v2){...}
(5)
void abc(int v1, long v2){...}
void abc(long v1, int v2){...}
(6)
void abc(int v1, long v2){...}
int abc(int v1, long v2){...}
13‐3
オーバーロードを説明しなさい
13‐4
次のようなExer13_04というクラスを作成・コンパイル・実行しなさい。
・int型のmet()というstaticメソッドを2個オーバーロードする。
・1個目のmet()はint型の引数1個で、引数の値をそのまま返す。
・2個目のmet()はint型の引数2個で、引数の値を足した値を返す。
・mainメソッドから2個のmet()を適当な引数を指定して呼び出し、その結果を出力する。
13‐5
上記のExer13_04を次のように変更し、Exer13_05というクラスを作成しなさい。
・2個のmet()メソッドを非staticに変更する。
・mainメソッドから2個のmet()を適当な引数を指定して呼び出し、その結果を出力する。非staticなので注意すること。
13‐6
次のようなExer13_06というクラスを作成・コンパイルしなさい。
・非staticなint型のnumというフィールドをもつ。
・次のようなmet()というメソッドを2個オーバーロードする。
static int met(int v1){...}
int met(){...}
・static int met(int v1){...}は、引数の2乗を返す。
・int met(){...}はnumフィールドの2乗を返す。
13‐7
次のような処理を行うExer13_07というクラスを作成・コンパイル・実行しなさい。
・上記Exer13-06の引数をもつmet()を適当な引数を指定して呼び出して出力する。
・上記Exer13-06のインスタンスを生成する。
・そのインスタンスのnumフィールドにを適当な値を代入する。
・そのインスタンスの引数のないmet()を呼び出して出力する。