2015-04-02 492 views
0

強調文本我一直在解決這個問題一段時間,並設法擺脫了這個類的幾乎所有錯誤。這個錯誤一直說我缺少方法體或聲明抽象,但我只是沒有看到它。我已經設法完成了與此類似的其他課程,但這似乎是奇怪的行爲。有人可以幫我嗎?謝謝,如果你這樣做。Java錯誤 - 缺少方法主體或聲明摘要

import java.util.Scanner; 
public class HockeyPlayer extends StudentAthlete 
{ 
    Scanner keyboard = new Scanner(System.in); 
    public static void main (String [] args) 
    { 
    HockeyPlayer athlete1 = new HockeyPlayer("Dave", 111111, 15, 3.2, 2, 3); 

    athlete1.writeOutput(); 
    } 

    private int assist = 0; 
    private int goal = 0; 

    public HockeyPlayer() 
    { 
    super(); 
    goal = 0; 
    assist = 0; 
    } 

    public int getAssist() 
    { 
    return assist; 
    } 

    public void setAssist(int newAssist) 
    { 
    if (0 >= newAssist) 
    { 
     assist = newAssist; 
    } 
    else 
    { 
     System.out.println("Invalid Assists"); 
     System.out.println("Please enter a valid Assists"); 
     int tempAssist = keyboard.nextInt(); 
     setAssist(tempAssist); 
    } 
    } 

    public int getGoal() 
    { 
    return goal; 
    } 

    public int setGoal(int newGoal) 
    { 
    if (0 >= newGoal) 
    { 
     goal = newGoal; 
    } 

    else 
    { 
     System.out.println("Invalid Goals"); 
     System.out.println("Please enter a valid Goals"); 
     int tempGoal = keyboard.nextInt(); 
     setGoal(tempGoal); 
    } 
    } 

    public HockeyPlayer(String initialName, int initialStudentNumber, int initialJersey, double initialGpa, int initialGoal, int initialAssist) 
{ 
    super (initialName, initialStudentNumber,initialJersey, initialGpa); 
    setGoal(initialGoal); 
    setAssist(initialAssist); 
} 

    public HockeyPlayer(String initialName, int initialStudentNumber, int initialJersey, double initialGpa) 
    { 
    super (initialName, initialStudentNumber, initialJersey, initialGpa); 
    goal = 0; 
    assist= 0; 
    } 

    public HockeyPlayer(String initialName, int initialStudentNumber) 
    { 
    super (initialName, initialStudentNumber); 
    goal = 0; 
    assist = 0;  
    } 

    public HockeyPlayer(String initialName) 
    { 
    super(initialName); 
    goal = 0; 
    assist = 0; 
    } 

    public void writeOutput(); // THE ERROR OCCURS HERE 
    { 
    super.writeOutput(); 
    System.out.println("Goals: " + goal); 
    system.out.println("Assists: " + assist); 
    } 
} 
+2

'公衆詮釋setGoal(INT newGoal)'...這是什麼方法,想回去呢? – MadProgrammer 2015-04-02 03:05:19

回答

1

變化

public int setGoal(int newGoal) 

public void setGoal(int newGoal) 

setter方法通常沒有返回類型(基於事實,你不要試圖返回任何東西,你可能不打算它有一個int返回類型)。

而且改變

public void writeOutput(); 

public void writeOutput() 
+0

我其實有一個不同的錯誤,並設法修復舊的。我在這裏做錯了什麼? – 2015-04-02 03:16:05

+0

@AustinJonMagalong編輯。你有額外的; – Eran 2015-04-02 03:21:18