012-002-010
staticメソッドとインスタンスメソッドの使い分け
上級
問題説明
staticメソッドとインスタンスメソッドの使い分け
この問題では: MathUtilクラスにstaticメソッドmax()とfactorial()を実装し、Scannerで読み込んだ値をもとにクラス名から直接呼び出して結果を標準出力に表示するプログラムを作成します。
学習目標: staticメソッドとインスタンスメソッドの違いと適切な使い分けを理解する
概要
staticメソッドはインスタンスなしで呼び出せるクラスメソッドです。インスタンスメソッドは特定のオブジェクトに対して動作します。
仕様
- MathUtilクラスを作成する
- static int max(int a, int b): 2つの値の最大値を返すstaticメソッド
- static int factorial(int n): 階乗を計算するstaticメソッド
- mainメソッドでScannerを使って入力を読み込み、MathUtil.max()とMathUtil.factorial()を呼び出す
入力形式
a b
c d
n
m
- 1行目: max()に渡す1組目の整数a, b(スペース区切り)
- 2行目: max()に渡す2組目の整数c, d(スペース区切り)
- 3行目: factorial()に渡す1つ目の整数n
- 4行目: factorial()に渡す2つ目の整数m
出力形式
max(a, b) = [aとbの最大値]
max(c, d) = [cとdの最大値]
n! = [nの階乗]
m! = [mの階乗]
