2016-08-19 6 views
-3

Iveは夏にJavaのスキルを向上させるために取り組んできましたが、私はこの問題で何が欠けているのか理解できません。この問題を解決するにはどうすればよいですか?Writing Classes

合計の の数値を表すNumberOfGoalsというクラスを作成します。 NumberOfGoals クラスには、インスタンスデータとして1つの整数が含まれていなければなりません。 得点の数を表します。 を0に初期化するコンストラクタを作成します。ゴールが得点されるたびに値を1ずつインクリメントするsetGoal というメソッドを作成し、これまで得点の合計数値 を返すgetGoalという別のメソッドを作成します。最後に、いくつかのNumberOfGoalsオブジェクトを作成し、メソッドを テストする、 GoalTrackerというドライバクラスを作成します。

public class ChapterFourProblem1 { 

    int goalsscored; 


public ChapterFourProblem1(int numberofgoals){ 

goalsscored= numberofgoals=0; } 

public int setGoal() { 
    return goalsscored++; } 


public int getGoal() { 
    return goalsscored; 
+1

呼び出しますか? – shmosel

+2

私が見る限り、ほぼ正しいです。 'numberofgoals'はコンストラクタに余計です。あなたはいくつかの閉じ括弧が欠けているようです。あなたは 'GoalTracker'も欠いています。また、あなたのコードは読みにくく、ほとんどの人はそれを読もうとするのは嫌です。インデントはコンパイラにとってはオプションですが、他の人(またはあなた自身)がコードを読むことを期待する場合は不可欠です。 GoogleがJava Style Guideをアップしてそれに固執する。 – Amadan

+1

IMO、あなたのコンストラクタは要件を満たしていません。単にゼロで初期化する必要がありますが、 "numberofgoals"というパラメータはありません(現時点ではあなたのコードでは実際には役に立たない)。 – home

答えて

0

これほど難しくありません。

public class NumberOfGoals { 
      int goalsScored; 
      public NumberOfGoals(){ 
       goalsScored= 0; 
      } 
      public void setGoal() { 
       goalsScored++; 
      } 
      public int getGoal() { 
       return goalsScored; 
      } 
    } 

これは基本的にすべて行う必要があります。 このlinkを見て、Javaの基本概念を理解してください。

mainメソッドでは、ChapterfourProblem1オブジェクトを作成することができますし、メソッド

正確にあなたが立ち往生している何
public GoalTracker{ 
    public static void main(String[] args){ 
     NumberOfGoals goal = new NumberOfGoals() 
     NumberOfGoals goal2 = new NumberOfGoals() 
     NumberOfGoalsgoal3 = new NumberOfGoals() 
      goal.setGoal(); 
      System.out.println(goal.getGoal()); 
     } 
} 
+0

私はちょうどその手の問題の明らかな説明を指摘しました。私は間違ったgetGoalの使い方をお詫びします。更新されました – Sohil