konstruktor übergabe fehler

  • Themenstarter Themenstarter alf1282
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
A

alf1282

Gast
Code:
class Zinsen {
	double g ; // Grundbetrag
	double z ; //Zinssatz
	double l ; // Laufzeit 
	double k ; // zinsen in euro 
	double x ; // Zinssatz  in 0,00
	double y ; // laufvariable0
	
	double x (){                // berechnung Zinssatz  in 0,00
	return	(z/100);
	}
	
	public double zinsen(){
		for(double i=0;i<=l;i++){
			k=g*x;
			g=g+k;
			System.out.println ("l"+k+"i");
		}
		return g;
	}
	 
	//konsavtruktor
	Zinsen (double grundbetrag,double p,double zinssatz,double laufzeit){
		g=grundbetrag;
		z=zinssatz;
		l=laufzeit;
}

public class Zinseszins {
	public static void main(String[] args) {
		Zinsen r1=new Zinsen (100.,10.,3.);
		double gr1,fl2;
		gr1=r1.zinsen();
	}
}
}
weiß nicht wo der Fehler liegt
 
Ich auch nicht!

Wenn ich nicht mal ne kleine Beschreibung sehe wo genau das Problem liegt schau ich den Code nicht mal an. Also bisschen mehr Mühe kann man schon erwaten wenn du hilfe von irgendwem hier willst.
 
:lol: :lol: ja hast schon recht nächstes mal besser so
mein Hauptproblem ist das das er die Main class nicht findet und ich so was noch nicht hatte
???:L
Code:
class Zinsen {
	double g ; // Grundbetrag
	double z ; //Zinssatz
	double l ; // Laufzeit 
	double k ; // zinsen in euro 
	double x ; // Zinssatz  in 0,00
	double y ; // laufvariable0
	
	double x (){                // berechnung Zinssatz  in 0,00
	return	(z/100);
	}
	
	public double zinsen(){
		for(double i=0;i<=l;i++){
			k=g*x;
			g=g+k;
			System.out.println ("l"+k+"i");
		}
		return g;
	}
	 
	//konsavtruktor
	Zinsen (double grundbetrag,double laufzeit,double zinssatz){
		g=grundbetrag;
		z=zinssatz;
		l=laufzeit;
}

public class Zinseszins {
	public  void main(String[] args) {
		r1=new Zinsen (100.,10.,3.);
		double gr1,fl2;
		gr1=r1.zinsen();
	}
}
}
 
Die main-Methode muss static sein.
Wozu unten die 2. Klasse?
Und für ein neues Objekt musst der Objekttyp am Anfang stehen.

Code:
class Zinsen {
   double g ; // Grundbetrag
   double z ; //Zinssatz
   double l ; // Laufzeit
   double k ; // zinsen in euro
   double x ; // Zinssatz  in 0,00
   double y ; // laufvariable0
   
   double x (){                // berechnung Zinssatz  in 0,00
   return   (z/100);
   }
   
   public double zinsen(){
      for(double i=0;i<=l;i++){
         k=g*x;
         g=g+k;
         System.out.println ("l"+k+"i");
      }
      return g;
   }
   
   //konsavtruktor
   Zinsen (double grundbetrag,double laufzeit,double zinssatz){
      g=grundbetrag;
      z=zinssatz;
      l=laufzeit;
   }

   public static void main(String[] args) {
      Zinsen r1 = new Zinsen (100.,10.,3.);
      double gr1, fl2;
      gr1 = r1.zinsen();
   }
}
 
das wär eine möglichkeit aber ich muss 2 klassen haben da sie brauche

Code:
public class Zinseszins {
	public  void main(String[] args) {
		Zinsen	r1=new Zinsen (100.,10.,3.);
		double gr1,fl2;
		gr1=r1.new Zinsen();
hab da noch was geändert aber ist immer noch ein Fehler
 
> ist immer noch ein Fehler

soll jemand raten, WELCHER Fehler es ist?

> mein Hauptproblem ist das das er die Main class nicht findet und ich so was noch nicht hatte

für sowas viele Details angeben, am aller wichtigsten ist der Aufruf, den du eintippst,
wie die Klassen auf einzelne Dateien verteilt sind, ob public oder nicht, wie die Dateien heißen,
package-Angaben, Verzeichnisstrukturen usw.

> public void main(String[] args) {

main muss immer noch static sein!
 
Das static kommt vor das void.

Und du kannst nicht einfach in einer Unterklasse die main-Methode definieren. Du brauchst in der Klasse Zinseszins einen Konstruktor, der dir das erledigt:
Code:
class Zinsen {
   double g ; // Grundbetrag
   double z ; //Zinssatz
   double l ; // Laufzeit
   double k ; // zinsen in euro
   double x ; // Zinssatz  in 0,00
   double y ; // laufvariable0
   
   double x (){                // berechnung Zinssatz  in 0,00
   return   (z/100);
   }
   
   public double zinsen(){
      for(double i=0;i<=l;i++){
         k=g*x;
         g=g+k;
         System.out.println ("l"+k+"i");
      }
      return g;
   }
   
   //konsavtruktor
   public Zinsen (double grundbetrag,double p,double zinssatz,double laufzeit){
      g=grundbetrag;
      z=zinssatz;
      l=laufzeit;
   }
   
   public static void main(String[] args) {
	   //unvollständig ?
   }

   class Zinseszins {
		public Zinseszins() {
			Zinsen r1 = new Zinsen (100, 10, 3, l);
		      double gr1,fl2;
		      gr1=r1.zinsen();
		}
	}
}
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben