2016-05-24 6 views
-1

各クラスの機能を分離するために3つのクラスを作成しました。getter-setterで3つのクラス


1 - 入力を受け付け、出力取得し、データを設定するだけ

import java.util.Scanner; 
public class InputOutput { 

    public static void main(String[] args) { 
     GetterSetter obj = new GetterSetter(); 
     Scanner input = new Scanner(System.in); 
     System.out.print("Input 1st num: "); 
     int a = input.nextInt(); 
     obj.setNum1(a); 
     System.out.print("Input 2nd num: "); 
     int b = input.nextInt(); 
     obj.setNum2(b); 
     System.out.println(obj.getSum()); 

    } 
} 

2クラス - GetterSetterクラスを印刷InputOutputでクラス。

public class GetterSetter { 
    private int num1; 
    private int num2; 
    private int sum; 

    public int getNum1() { 
     return num1; 
    } 
    public void setNum1(int num1) { 
     this.num1 = num1; 
    } 
    public int getNum2() { 
     return num2; 
    } 
    public void setNum2(int num2) { 
     this.num2 = num2; 
    } 
    public int getSum() { 
     return sum; 
    } 
    public void setSum(int sum) { 
     this.sum = sum; 
    }  
} 

第3 - データを処理するプロセスクラス(プログラム内のすべてのロジックを含む)。

public class Process { 

    GetterSetter obj = new GetterSetter(); 
     int num1 = obj.getNum1(); 
     int num2 = obj.getNum2(); 
     int sum = num1 + num2; 
     obj.setSum(sum);//error 
} 

どのように私は、プロセスのクラスは、アクションに入って来ることができますか?

どのように私はこれを達成することができます

  1. は、プロセスクラスの

  2. GetterSetterクラスにInputOutputでクラスからのデータに

  3. セット収集したデータを取得し、GetterSetterクラスからデータを取得します - >操作を実行して - >結果をGetterSetterクラスに設定します。

  4. 最後に、Output/resultをInputOutputクラスに出力します。

+2

1)Modelクラス(GetterSetter?)とは何ですか? 2)アプリケーションクラスとは何ですか? 3)パート3では、現在何をやっているのですか? 4)宿題はいつまでにかかりますか? – Ironcache

+0

ここでMVCパターンに従っているようです。これはどのように動作するかについての良い参考資料です:[MVC](http://www.tutorialspoint。com/design_pattern/mvc_pattern.htm)このチュートリアルを完了し、現在のアプリケーションに合わせることをお勧めします。 –

答えて

0

あなたのクラスInputOutputからすべての情報を取得するためにextendsキーワードを使用することができます。そして、あなたはGetterSetterクラスからの情報を使用して、あなたのProcessクラスにそれを拡張することができます

public class GetterSetter extends InputOutput 
{ 
    /*** Code from your GetterSetter class ***/ 
} 

:あなたはこれを試みることができます。

public class Process extends GetterSetter 
{ 
    /*** Code from your Process class ***/   
} 

今、あなたは他の二つのクラスの中にあなたのInputOutputクラスからすべての変数を使用することができます。

Processクラスの中では、toString()メソッドを使用してSystem.out.println(obj.getSum());をオーバーライドすることができます。

public String toString(num1, num2, sum) 
{ 
    String sumString = "" + sum; 
    return sumString; 
} 

、代わりにあなたがtoString()メソッドを呼び出し、それを印刷し、使用しているSystem.out.println()を呼び出す:

toString()は次のようになるはずです。

System.out.println(toString(a, b)); 

これはあなたがやっていることで多少役立ちました。

関連する問題