2016-11-13 3 views
-5

verfolge ich ein Buch in diesem Buch wird der Code gegeben ich es zu kompilieren versucht, „kann nicht Symbol finden“, aber es zeigt sich hier Fehler ist die Code-ich neu in meinem Code hier in Java bin, ist ein Fehler

class TapeDeck { 
    boolean canRecord = false; 

    void playTape() { 
     System.out.println("tape recording"); 
    } 

    void recording() { 
     System.out.println("tape recording"); 
    } 
} 
class TapeDeckTestDrive { 
    public static void main (String [] args) { 
     TapeDeck t = new TapeDeck(); 
     t.canRecord = true; 
     t.play(); 

     if (t.canRecord == true) { 
      t.recordTape(); 
     } 
    } 
} 

und ein Fehler ist ....

TapeDeck.java:16: error: cannot find symbol 
       t.play(); 
       ^
    symbol: method play() 
    location: variable t of type TapeDeck 
TapeDeck.java:19: error: cannot find symbol 
         t.recordTape(); 
         ^
    symbol: method recordTape() 
    location: variable t of type TapeDeck 
2 errors 
+0

'TapeDeck' hat keine' play' und 'recordTape' Methoden. – janos

+0

Ihre Funktionen sind playTape() und Aufnahme(). Sie rufen play() und recordTape() auf. –

+0

nach der Fehlerbehebung habe ich einen Fehler wie diese .. 'Fehler: Hauptmethode nicht in der Klasse TapeDeck gefunden, bitte definieren Sie die Hauptmethode als: öffentliche statische void main (String [] args) oder eine JavaFX-Anwendung Klasse muss javafx erweitern .application.Application ' – user16674

Antwort

0

Es ist, weil play() keine Methode der Klasse TapeDeck ist. Allerdings müssen Sie die folgende Methode:

void playTape() { 
    System.out.println("tape recording"); 
} 

In diesem Verfahren ist, dass Sie gemeint, dann t.play()-t.playTape() ändern. Wenn nicht, müssen Sie play() in TapeDeck erstellen.

+0

* "dann sollte dein Code kompilieren" * Das ist falsch. – Tom

+0

Oder eher, _ "dieser Fehler sollte weggehen" _. – Smittey

0

Sie erhalten dies, weil Sie versuchen, Methoden aufzurufen, die TapeDeck nicht haben: play() und recordTape(). Wahrscheinlich hat das Buch, auf das Sie sich beziehen, die Implementierung der Größe halber nicht gezeigt.

Sie können nur diese Methoden zu Ihrer TapeDeck Klasse hinzufügen oder die Methoden ändern Sie von Ihrem Hauptverfahren zu den bereits in Ihrer TapeDeck Klasse (playTape() und recording()) sind aufgerufen wird.

Verwandte Themen