2017-11-30 2 views
-1

Meine ersten Klasse. (genannt Person.java)Name nicht gefunden Fehler in Java

public class Person { 
// Instance variables 
private String name; 
private String address; 
// Constructor 
public Person(String name, String address) { 
this.name = name; 
this.address = address; 
} 
// Getters 
public String getName() { 
return this.name; 
} 
public String getAddress() { 
return this.address; 
} 
public String toString() { 
return this.name + "(" + this.address + ")"; 
} 
} 

Meine zweite Klasse. (genannt Student.java)

public class Student extends Person { 
// Instance variables 
private String subject; 
// Constructor 
public Student(String name, String adress, String subject){ 
    super(name, adress); 
    this.subject = subject 
} 
// getters 
public String getSubject(){ 
    return this.subject ; 
} 

} 

Meine Klasse, verwendet diese beiden Klassen. (run-Methode ist wie die Hauptkomponente)

import acm.program.*; 

public class Test extends Program{ 

    public void run() { 
     Student obj1 = new Student("Kwnstantinos", "Liakataiwn", "math"); 
} 
} 

Ich schreibe folgendes in den cmd, um es zu kompilieren, aber ich habe kann nicht finden Symbol Fehler bei der Kompilierung.

javac -cp acm.jar Person.java Student.java Test.java 

ich versuchte, eine Person des Klassenobjekt zu machen und es hat funktioniert, aber wenn ich versuche, ein Student-Klasse-Objekt erstellen ich dieses error.Why dies geschieht.

C:\Users\Kwnstantinos\Desktop\JAVA>javac -cp acm.jar Person.java Student.java Test.java 
Test.java:6: error: cannot find symbol 
     Student obj1 = new Student("Kwnstantinos", "Liakataiwn", "math"); 
    ^
    symbol: class Student 
    location: class Test 
Test.java:6: error: cannot find symbol 
     Student obj1 = new Student("Kwnstantinos", "Liakataiwn", "math"); 
         ^
    symbol: class Student 
    location: class Test 
2 errors 
+0

Bitte posten Sie die vollständige Fehlermeldung – BackSlash

+0

Können Sie bitte Ihre Antwort bearbeiten, um die vollständige Fehlermeldung, die Sie bekommen? – Keara

+0

Du postest mit neuen Kursteilnehmern und dein Fehler ist mit Lehrer, etwas stimmt hier nicht –

Antwort

0

Es sieht aus wie Sie nicht die Klasse Student in der Test-Klasse importiert haben, und diese beiden Klassen Test.java und Student.java sind in verschiedenen Paketen.

Diese Zeile muss am Ende

this.subject = subject; 

ein Semikolon haben Danach sein ohne das Glas Import feinen kompilieren.

Ja die andere Antwort war richtig Sie es wie dieser

javac -cp . Person.java Student.java Test.java haben müssen, wenn Sie den acm vom

Import entfernen und sie kompilieren in Ordnung.

+1

Ich habe alle diese 3 Java-Dateien im gleichen Ordner Also was sollte ich in der Importanweisung schreiben? –

+0

Ok, das ist in Ordnung Sind sie im gleichen Paket auch? – muasif80

+0

Durch in demselben Ordner zu sein, sollten sie per Definition in demselben Paket sein –

Verwandte Themen