Methoden aus Klassen anzeigen lassen

Capwned

Mitglied
Moin Leute,
ich habe mich an eine schon lange von mir gehasste Aufgabe gesetzt. Es geht um eine degressive Abschreibung von z.B. einem Roller.
Ich habe die Aufgabe vor längerer Zeit bereits geschrieben aber das ganze in einer Klasse, unterteilt in Methoden. Dort lief die Rechnung, sowie Ausgabe perfekt durch.

nun will ich das ganze aber in verschiedene Klassen aufteilen und habe Probleme mit der Ausgabe meiner Rechnung.

Hier die Testklasse.
Java:
import java.util.Scanner;


public class testKlasse {

	public static void main(String[] args) {

		
		
		
		Scanner sc = new Scanner (System.in);
			
		System.out.print("Bitte geben Sie den Hersteller des Rollers an: ");
		
		String hersteller = sc.next();
				
		System.out.print("Bitte geben Sie das Modell ihres Rollers an: ");
		
		String modell = sc.next();
		
		
		
		
		System.out.print("Bitte geben Sie den Anschaffungswert ihres Rollers an: ");
			
				  double a0 = sc.nextDouble();
				
			
				
			
		System.out.print("Bitte geben Sie die Nutzungsdauer ihrer Abschreibung an: ");
				
				int laufzeit = sc.nextInt();
						
	
				
		System.out.print("Bitte geben Sie den Restwert ihrer Abschreibung an: ");
	
			   double restwert = sc.nextDouble();
				
			
				Abschreibungsplan abschr1 = new Abschreibungsplan(a0,laufzeit,restwert);
				Investitionsprojekt inves1 = new Investitionsprojekt(hersteller, modell, abschr1);
		
				inves1.print1();
			
				
		
				
	}

	
	
}

Und hier die Klasse in der die Methoden der Rechnung und Ausgabe stehen sollen.

Java:
public class Rechnung {
	
	private double a0;
	private int laufzeit;
	private double restwert;
	
	

	public Rechnung(double a0, int laufzeit, double restwert) {
		super();
		this.a0 = a0;
		this.laufzeit = laufzeit;
		this.restwert = restwert;
	}

	public double getA0() {
		return a0;
	}

	public void setA0(double a0) {
		this.a0 = a0;
	}

	public int getLaufzeit() {
		return laufzeit;
	}

	public void setLaufzeit(int laufzeit) {
		this.laufzeit = laufzeit;
	}

	public double getRestwert() {
		return restwert;
	}

	public void setRestwert(double restwert) {
		this.restwert = restwert;
	}

	
	 static double[][] degressiveAbschreibung (double laufzeit, double a0, double restwert) {
		    double[][] arraytabelle = new double [(int) laufzeit][4];
		   
		    double neueLaufzeit = laufzeit;
			 double zahl1;
			 double zahl2;
			 double abschreibungsprozentsatz1 ;
			 double abschreibungsprozentsatz2 ;
			     
			 
			 zahl2= 1/neueLaufzeit;
			 zahl1 =restwert/a0;
			  abschreibungsprozentsatz1 = Math.pow(zahl1,zahl2);
			  abschreibungsprozentsatz2 = 1-abschreibungsprozentsatz1;
			   
		    		
		    double afabetrag;
		    for (int jahre=1;jahre<=laufzeit; jahre++) {
		      arraytabelle[jahre-1][0] = Math.round(jahre);
		      arraytabelle[jahre-1][1] = Math.round(a0);
		      arraytabelle[jahre-1][2] = Math.round(afabetrag= a0 * abschreibungsprozentsatz2) ;
		      arraytabelle[jahre-1][3] = Math.round(a0-afabetrag);
		      a0 = a0-afabetrag;
		       }
		    return arraytabelle;
		  }
	
	
	 static void ausgabe (double arraytabelle[][]) {
	    System.out.println("Periode\t\tBuchwert 1.1.\tAbschreibung\tEBuchwert 31.12.");
	     for (int zeile=0; zeile<arraytabelle.length; zeile++) {
	       for (int spalte=0; spalte<arraytabelle[zeile].length; spalte++) {
	         System.out.print(arraytabelle[zeile][spalte]+"\t\t");
	       }
	       System.out.println("");
	     }
	}
		
	}

Die Ausgabe der Methode inves1.print1(); aus einer anderen Klasse in der Testklasse funktioniert z.B. Allerdings bekomme ich es nicht hin mir die Ausgabe des Arrays in der Testklasse anzeigen zu lassen. Die Rechnung und der Aufbau der Ausgabe stimmen aber ich habe bei der Umwandlung in Klassen wohl noch irgendwo ein Fehler gemacht? Diesen finde bzw. verstehe ich einfach nicht
 
Zuletzt bearbeitet von einem Moderator:

JavaMeister

Gesperrter Benutzer
Die Ausgabe der Methode inves1.print1(); aus einer anderen Klasse in der Testklasse funktioniert z.B. Allerdings bekomme ich es nicht hin mir die Ausgabe des Arrays in der Testklasse anzeigen zu lassen. Die Rechnung und der Aufbau der Ausgabe stimmen aber ich habe bei der Umwandlung in Klassen wohl noch irgendwo ein Fehler gemacht? Diesen finde bzw. verstehe ich einfach nicht

Ich auch nicht. Wenn nur jemand beschreiben würde, welche Ausgabe man hier erwarten würde und welche statdessen kommt? Oder falls ein Fehler kommt, könnte man ihn hier posten.

Google mal nach: Wie man Fragen richtig stellt.
 

Capwned

Mitglied
Wie kann ich die Methode ausgabe aus der Klasse Rechnung in der Testklasse anzeigen?
Ist es so vll etwas verständlicher?
 
Zuletzt bearbeitet:

Capwned

Mitglied
Auf diesem Weg hat es bei mir bis jetzt nicht funktioniert.
Er gibt die erste out.print aus so wie er es soll
Periode...............Buchwert 1.1............. Abschreibung.............. EBuchwert 31.12.

danach kommt die Fehlermeldung :
java.lang.NullPointerException at Abschreibungsplan.ausgabe(Abschreibungsplan.java:74)
Hier noch mal (Zeile 74)
Java:
for (int zeile=0; zeile<arraytabelle.length; zeile++) {

habe ich die ausgabe dann falsch definiert oder kann es so mit der Methode auf diese Weise nicht funktionieren?
 
Zuletzt bearbeitet:

Capwned

Mitglied
Dann sollte sich mir wohl die Frage stellen wieso die arraytabelle null ist? Aber zurzeit komme ich 0 weiter ;)
Ich finde meinen Denkfehler einfach nicht.
 

Capwned

Mitglied
Java:
import java.util.Scanner;
import java.util.InputMismatchException;

public class Rechner {

	public static void main(String[] args) {

		
		
		 
		Scanner sc = new Scanner (System.in);
			
		System.out.print("Bitte geben Sie den Hersteller des Investitionsprojektes an: ");
		
		String hersteller = sc.next();
				
		System.out.print("Bitte geben Sie das Modell ihres Investitionsprojektes an: ");
		
		String modell = sc.next();
		
		
		
		
		System.out.print("Bitte geben Sie den Anschaffungswert ihres Investitionsprojektes an: ");
			
				  double a0 = sc.nextDouble();
				
			
				
			
		System.out.print("Bitte geben Sie die Nutzungsdauer ihres Investitionsprojektes an: ");
				
				int laufzeit = sc.nextInt();
						
	
				
		System.out.print("Bitte geben Sie den Restwert ihres ihres Investitionsprojektes an: ");
	
			   double restwert = sc.nextDouble();
				
			
				Abschreibungsplan abschr1 = new Abschreibungsplan(a0,laufzeit,restwert);
				Investitionsprojekt inves1 = new Investitionsprojekt(hersteller, modell, abschr1);
		
				inves1.print1();
				
				
				abschr1.ausgabe(null);
				
				
	}

	
	
}

Java:
import java.util.Arrays;

public class Abschreibungsplan {
	
	private double a0;
	private int laufzeit;
	private double restwert;
	double zahl1;
	double zahl2;
	

	public Abschreibungsplan(double a0, int laufzeit, double restwert) {
		super();
		this.a0 = a0;
		this.laufzeit = laufzeit;
		this.restwert = restwert;
	}

	public double getA0() {
		return a0;
	}

	public void setA0(double a0) {
		this.a0 = a0;
	}

	public int getLaufzeit() {
		return laufzeit;
	}

	public void setLaufzeit(int laufzeit) {
		this.laufzeit = laufzeit;
	}

	public double getRestwert() {
		return restwert;
	}

	public void setRestwert(double restwert) {
		this.restwert = restwert;
	}
	
		public double[][] degressiveAbschreibung (double laufzeit, double a0, double restwert) {
		    double[][] arraytabelle = new double [(int) laufzeit][4];
		
		    double neueLaufzeit = laufzeit;
			 double zahl1;
			 double zahl2;
			 double abschreibungsprozentsatz1 ;
			 double abschreibungsprozentsatz2 ;
			 double afabetrag; 
			 
			 zahl2= 1/neueLaufzeit;
			 zahl1 =restwert/a0;
			  abschreibungsprozentsatz1 = Math.pow(zahl1,zahl2);
			  abschreibungsprozentsatz2 = 1-abschreibungsprozentsatz1;
		
		    		
		    
		    for (int jahre=1;jahre<=laufzeit; jahre++) {
		      arraytabelle[jahre-1][0] = Math.round(jahre);
		      arraytabelle[jahre-1][1] = Math.round(a0);
		      arraytabelle[jahre-1][2] = Math.round(afabetrag= a0 * abschreibungsprozentsatz2) ;
		      arraytabelle[jahre-1][3] = Math.round(a0-afabetrag);
		      a0 = a0-afabetrag;
		       }
		    return arraytabelle;
		  }
		  
		  
	
		
		public static void ausgabe (double arraytabelle[][]) {
		    System.out.println("Periode\t\tBuchwert 1.1.\tAbschreibung\tEBuchwert 31.12.");
		     for (int zeile=0; zeile<arraytabelle.length; zeile++) {
		       for (int spalte=0; spalte<arraytabelle[zeile].length; spalte++) {
		         System.out.print(arraytabelle[zeile][spalte]+"\t\t");
		       }
		       System.out.println("");
		     }
		
	
}
	}

So? Ich habe die Klasse Fahrzeug weggelassen da sie unwichtig ist und dort auch alles läuft.
 
Zuletzt bearbeitet:

JavaMeister

Gesperrter Benutzer
abschr1.ausgabe(null);


HMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM. Warum kommt da nun eine Nullpointer Exception?!?!

Ist der Zusammenhang Dir nicht klar? - Wenn nein, dann empfehle ich dir dringend ein Javabuch.
 

Capwned

Mitglied
Ahh das war noch vom rumtesten drinne und ich wollte gucken was genau passiert :D! Ursprünglich habe ich da gar nichts, da ich wie bereits gesagt nicht weiß wie ich sie korrekt aufrufe. Genau da brauch ich mal die korrekte Antwort oder Lösung meines Rätsels.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
MoxMorris Einige Methoden aus verschiedenen Klassen nacheinander auszuführen läuft seltsam Java Basics - Anfänger-Themen 2
I Gleiche Klassen und Methoden in unterschiedlichen Projekten nutzen Java Basics - Anfänger-Themen 2
N Klassen Methoden anderer Klassen aufrufen Java Basics - Anfänger-Themen 4
berserkerdq2 Zwei Klassen Erben von der Klasse A, die eine Klasse kann ich an Methoden übergeben, die als Parameter A haben, die andere nicht? Java Basics - Anfänger-Themen 3
M Andere Methoden in anderen Klassen aufrufen Java Basics - Anfänger-Themen 11
L Methoden in anderen Klassen nutzen Java Basics - Anfänger-Themen 6
C Fernseher-Aufgabe (Methoden, Klassen und Objekte) Java Basics - Anfänger-Themen 63
H Methoden in großen Klassen gruppieren oder auslagern? Java Basics - Anfänger-Themen 10
A Klassen und methoden Java Basics - Anfänger-Themen 15
A Bankweverwaltung mit Klassen und Methoden Java Basics - Anfänger-Themen 14
M Aufsplitten von Methoden in andere Klassen Java Basics - Anfänger-Themen 2
Curtis_MC Parameter-Übergabe bei Klassen und Methoden Java Basics - Anfänger-Themen 12
C Methoden/Klassen Übergabewerte Java Basics - Anfänger-Themen 8
C Java Klassen/Methoden/Übergabeparameter Java Basics - Anfänger-Themen 4
C Methoden Auf Methoden anderer Klassen zugreifen Java Basics - Anfänger-Themen 10
J Teile der Funktionalität von Klassen in Methoden platzieren. Java Basics - Anfänger-Themen 3
M Methoden (in Klassen) Java Basics - Anfänger-Themen 4
J Klassen Variablen in andere Klassen oder Methoden übernehmen Java Basics - Anfänger-Themen 1
arjoopy Methoden Methoden anderer Klassen Java Basics - Anfänger-Themen 6
L Klassen - Getter & Setter Methoden Java Basics - Anfänger-Themen 2
T Wie finde ich passende Java Klassen & Methoden? Java Basics - Anfänger-Themen 4
E Erste Schritte Gute Erklärung zu Objekten / Klassen / Methoden / Sichtbarkeiten auf Deutsch Java Basics - Anfänger-Themen 3
R Anfängerfrage zu Methoden in Vererbte Klassen Java Basics - Anfänger-Themen 2
B Übungsaufgabe zu Klassen, Methoden ... Java Basics - Anfänger-Themen 2
K Methoden als Klassen benutzen Java Basics - Anfänger-Themen 42
K Vererbung Methoden in klassen auslagern und in mehreren Klassen verfügbar machen Java Basics - Anfänger-Themen 8
Pentalon Eclipse JUNO keine Vorschläge von Methoden bzw. Interfaces der eigenen Klassen Java Basics - Anfänger-Themen 5
B Klassen Java Taschenrechner mit Klassen und Methoden Java Basics - Anfänger-Themen 12
staxx6 ArrayList Methoden aufrufen bestimmter Klassen Java Basics - Anfänger-Themen 4
J Problem mit Klassen und Methoden Java Basics - Anfänger-Themen 7
W Kontenverwaltungssystem (Klassen, Methoden) Java Basics - Anfänger-Themen 3
F Interface Unterschied von Attributen und Methoden bei abstrakten Klassen und Interfaces Java Basics - Anfänger-Themen 5
H Klassen und Methoden Java Basics - Anfänger-Themen 12
D Kapselung Methoden anderer Klassen aufrufen Java Basics - Anfänger-Themen 7
A Klassen Methoden... Java Basics - Anfänger-Themen 15
I Objekte an andere Klassen/Methoden übergeben? Java Basics - Anfänger-Themen 5
T Vererbung und Zugriff auf Methoden von abgeleiteten Klassen Java Basics - Anfänger-Themen 2
T Kapselung: public-Methoden in protected-Klassen Java Basics - Anfänger-Themen 3
T OOP abstrakte klassen - methoden Java Basics - Anfänger-Themen 8
T Klassen, Objekte, Methoden Java Basics - Anfänger-Themen 9
U 2 Klassen mit get und set Methoden Java Basics - Anfänger-Themen 11
F Stilfrage: Klassen & Methoden Java Basics - Anfänger-Themen 15
V OOP Klassen Methoden Rückgabewert Java Basics - Anfänger-Themen 15
V OOP Klassen Methoden Java Basics - Anfänger-Themen 2
J Verständniss Frage zu Klassen, Objekte und Methoden Java Basics - Anfänger-Themen 8
L Methoden von anderen Klassen Aufrufen Java Basics - Anfänger-Themen 5
J Methoden/Klassen Problem Java Basics - Anfänger-Themen 9
E 2 Klassen - Problem bei Methoden Java Basics - Anfänger-Themen 22
F Auf Methoden anderer Klassen zugreifen? Java Basics - Anfänger-Themen 8
G Abstrakte Klassen und Methoden Java Basics - Anfänger-Themen 3
D In Gui auf Methoden anderer Klassen zugreifen Java Basics - Anfänger-Themen 2
U Methoden aus Programmfremden Klassen nutzen Java Basics - Anfänger-Themen 2
M Klassen/Methoden API Java Basics - Anfänger-Themen 6
G ArraylList aus Klassen --> Methoden der Klassen aufrufen Java Basics - Anfänger-Themen 3
T Funktionen Plotter - Klassen/Methoden/Funktionen Java Basics - Anfänger-Themen 13
H Wie kann ich auf Methoden von anderen Klassen zugreifen? Java Basics - Anfänger-Themen 1
M Methoden von Klassen aufrufen Java Basics - Anfänger-Themen 4
A Methoden von externen Klassen aufrufen Java Basics - Anfänger-Themen 3
G Übertragen von Variablen auf andere klassen oder Methoden Java Basics - Anfänger-Themen 2
J Methoden aus fremden Klassen verwenden Java Basics - Anfänger-Themen 6
T Mehrere paint Methoden in unterschiedlichen Klassen Java Basics - Anfänger-Themen 7
K Methoden Klassen Bsp. Bankkonto Java Basics - Anfänger-Themen 4
M Klassen/Methoden Java Basics - Anfänger-Themen 10
L Zusammenhang Methoden, Klassen, Objekte, static - sun doku Java Basics - Anfänger-Themen 4
C Methoden von verschieden Klassen in eine Klasse reinpacken? Java Basics - Anfänger-Themen 4
T Methoden / Klassen Problem Java Basics - Anfänger-Themen 11
G Methoden/Klassen elementare Probleme Java Basics - Anfänger-Themen 3
E Synchronized - Methoden in verschied. Klassen Java Basics - Anfänger-Themen 3
G dringende frage zu klassen und methoden ( klassendiagramm) Java Basics - Anfänger-Themen 19
L Klassen/Methoden/Objekt/Vererbung Java Basics - Anfänger-Themen 6
frau-u Problem mit Klassen und Vererbung - benutzen von Methoden Java Basics - Anfänger-Themen 2
L Klassen und Methoden für Dateivergleiche. Java Basics - Anfänger-Themen 4
G Was sind Klassen, Objekte und Methoden? Java Basics - Anfänger-Themen 3
H Methoden aus anderen Klassen aufrufen Java Basics - Anfänger-Themen 3
K klassen/methoden Java Basics - Anfänger-Themen 4
M Zugriff auf Klassen/Methoden im Hauptverzeichnis Java Basics - Anfänger-Themen 2
emreiu Methoden Rekursive Methoden Runter- & Hochzählen Java Basics - Anfänger-Themen 2
U Funktionale Interfaces mit mehreren abstrakten Methoden? Java Basics - Anfänger-Themen 8
J Argumente in Methoden übergeben Java Basics - Anfänger-Themen 1
XWing Methoden rückgabe Problem? Java Basics - Anfänger-Themen 6
Say Class scope und Instance scope und Getter nur selbstgeschrieben Methoden Java Basics - Anfänger-Themen 11
Renjiroo Java Bmi Rechner mit Methoden Java Basics - Anfänger-Themen 4
frager2345 Thread - Methoden synchronized deklarieren Java Basics - Anfänger-Themen 10
M Designentscheidung von Attributen/Methoden im Falle von Vererbung Java Basics - Anfänger-Themen 8
berserkerdq2 Findet eine parallele Verarbeitung in Java bei Threads erst statt, wenn man die Methoden auch synchronized? Und wie sieht bei Conditions aus? Java Basics - Anfänger-Themen 8
Alen123 Erstes Arbeiten mit Methoden. Java Basics - Anfänger-Themen 5
D Gerade oder ungerade Zahl mittels Methoden Java Basics - Anfänger-Themen 13
M Erklärung von Ausnahmebehandlung in Methoden Java Basics - Anfänger-Themen 13
S Methoden 2 non-static Methoden, trotzdem Fehler "non static method can not be referenced from a static context" Java Basics - Anfänger-Themen 9
L Rekursive Methoden Java Basics - Anfänger-Themen 14
X Wie erreiche ich, dass ein Robot weitere Attribute hat, die nicht materialisiert sind, sondern nur über get/ set-Methoden simuliert sind? Java Basics - Anfänger-Themen 1
C Problem mit mehreren Methoden + Scanner Java Basics - Anfänger-Themen 5
R Frage zu Methoden (Rückgabewert u. ohne.) Java Basics - Anfänger-Themen 2
W Verschiedene Methoden in einer Klasse in der Main aufrufen? Java Basics - Anfänger-Themen 8
W Methoden aufrufen - auch klassenübergreifend? Java Basics - Anfänger-Themen 9
Kotelettklopfer Methoden nicht aufrufbar Java Basics - Anfänger-Themen 34
R Schulaufgabe, Bruache Hilfe mit non-static Methoden Java Basics - Anfänger-Themen 2
S Vererbung Abstrakte Methoden: Wozu das Ganze?! Java Basics - Anfänger-Themen 7
S abstrakte methoden in subclass? Java Basics - Anfänger-Themen 7
S Methoden - Warum int wenn auch void? Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben