Ich habe Probleme mit folgenden 2 Klassen. Meine Aufgabe ist es eine Methode der einen Klasse in die andere einzufügen. In diversen Lehrbüchern steht, dass es mit der Punktnotation (objekt.Mehtodenname) gehen müßte. Bei mir kommt allerdings immer der Fehler "cannot find symbol [methodenname] . könnt ihr mir helfen? es geht um zeile 108 der Buch Klasse. Die Methode "gibVerlagsName()" kommt aus der Klasse Verlag.
Edit: Ich arbeite mit dem Programm Blue J
Klasse Buch:
Klasse Verlag:
Edit: Ich arbeite mit dem Programm Blue J
Klasse Buch:
Java:
public class Buch
{
// Exemplarvariablen
private String autor;
private String titel;
private int seiten;
private String refNummer;
private int ausgeliehen;
private Verlag verlag;
private String verlagsname;
private String verlagsort;
/**
* Setze den Autor und den Titel, wenn ein Exemplar erzeugt wird.
*/
public Buch(String buchautor, String buchtitel, int seitenanzahl,
String verlagsname, String verlagsort)
{
autor = buchautor;
titel = buchtitel;
seiten= seitenanzahl;
refNummer = "" ;
verlag = new Verlag( verlagsname, verlagsort);
this.verlagsname =verlagsname;
this.verlagsort= verlagsort;
}
// weitere Methoden hier einfügen ...
/**
* Eine Methode um den Autor anzuzeigen.
* @return show autor
*/
public String gibAutor()
{
return autor;
}
/**
*Eine Methode zum anzeigen des Titels
*@return show titel
*/
public String gibTitel()
{ return titel;
}
/**
* Zeige Autor in der Konsole
*/ public void autorAusgeben()
{
System.out.println(" Der Autor des Buches ist " +autor );
}
/**
* Zeige Titel in der Konsole
*/
public void titelAusgeben()
{
System.out.println(" Der Titel des Buches lautet " +titel);
}
/**
* Zeigt Seitenanzahl
*/public int gibseite()
{
return seiten;
}
/**
* Gibt Autor, Titel , Seitenazahl in der Konsole wieder
*/ public void detailsAusgeben()
{
System.out.println(
" Titel: "+titel+", Autor: "+autor+", Seiten: "+seiten);
String refNummerString;
if(refNummer.length() > 0) { refNummerString = refNummer;
} else {refNummerString = "ZZZ";}
System.out.println("Referenznummer: " + refNummerString);
System.out.println(" Wurde schon" +ausgeliehen+ "mal ausgeliehen");
dickAusgeben();
this.verlagsname.gibVerlagsName();
}
/**
* gibt die Kennzeichnung des Buches
*/
public void setzeRefNummer(String ref)
{
if(ref.length() > 2) {
refNummer = ref ; }
else { System.out.println
(" Error!!!!! Die Referenznummer hat mindestens 3 Zeichen.");
} }
/**
* Gibt die Referenznummer für dieses Buch aus
*/
public String gibRefNummer()
{
return refNummer;
}
/**
* Leiht das Buch aus und zählt wie oft es schon ausgeliehen wurde.
*/ public void ausleihen()
{
ausgeliehen++;
}
/**
* Gibt aus wie oft das buch schon ausgeliehen wurde
*/public int gibAusgeliehen()
{ return ausgeliehen;
}
/**
* Eine Methode die, die dicke des Buches angibt.
*/public void dickAusgeben()
{
if( seiten > 100)
{
System.out.println(titel+" ist ein dickes Buch");
}
else { System.out.println( titel+" ist ein dünnes Buch"); }
}
}
Klasse Verlag:
Java:
public class Verlag
{
private String verlagsname;
private String verlagsort;
/**
*
*/
public Verlag(String verlagsname, String verlagsort)
{
this.verlagsname = verlagsname;
this.verlagsort = verlagsort;
}
/**
* Gibt den Verlagsnamen in der Konsole aus.
*/
public void gibVerlagsName()
{
System.out.println( "Der Verlagsname: " +verlagsname);
}
/**
* Gibt den Verlagsort in der Konsole aus
*/
public void gibVerlagsOrt()
{
System.out.println( "Der Verlagsort: " +verlagsort);
}
/**
* Setzt einen neuen Verlagsname.
*/
public void setVerlagsname(String Ersatzname)
{
verlagsname = Ersatzname;
}
/**
* Setzt einen neuen Verlagsort
*/
public void setVerlagsort(String Ersatzort)
{
verlagsort = Ersatzort;
}
}