質問: one.divide(two, 20, BigDecimal.ROUND_HALF_UP); return divide; } }
回答: 私がDentakuクラス、Keisanクラスの2つに分けるとしたら、 概要としてはこんな感じになりそう。 Dentakuクラス:入力された文字列の解析、計算結果や例外の表示といった、 電卓の外側(ボタンや、画面など)を表すクラス。 Keisanクラス:電卓としての状態の管理、四則演算などの計算処理といった、 電卓の内側(メモリー機能とか)を表すクラス。 (名前は変えたほうがいいと思う、意味被りそうだけどCalculatorとか) Keisanクラスを分ける意味としては・・・ 計算式を分けて、あとで結果だけ合計したいときとか、 複雑な計算をしたい場合は、分けていたほうが良いかもしれないですね。 mainメソッドが結構長くなっているので クラスや、メソッドに処理を分けるというのはいい考えだと思います。