Methoden Ausgeben Aufgabe

Diskutiere Methoden Ausgeben Aufgabe im Java Basics - Anfänger-Themen Bereich.
B

Black Kong

Hallo,
hab folgende Aufgabe bezüglich Mehtoden
-Hersteller ausgeben können;
-den Bruttoverkaufspreis berechnen und ausgeben
-Ende der Garantie ausgeben bezogen auf das Kaufdatum

Ich habe die 1&2 Aufgabe soweit geschafft, nur bei der letzten habe ich einige Schwierigkeiten, dies zu realisieren, da mir wahrscheinlich die Befehle dazu fehlen.

Mit freundlichen Grüßen
Javascript:
package elektrorad;
import java.text.SimpleDateFormat; 
import java.util.Date; 


public class Elektrorad {
    int kennzeichen;
    String hersteller;
    String kdatum;
    String gdatumlaufzeit;
    int nettoverkaufspreis;
    public void bruttoverkaufspreis () {
        System.out.println(0.19*nettoverkaufspreis+nettoverkaufspreis);
      
    }
 
 
 
    

    
    public static void main(String[] args)throws Exception {
        // TODO code application logic here
     String sDate1="1/1/2019"; 
    Date date1=new SimpleDateFormat("dd/MM/yyyy").parse(sDate1); 
    System.out.println(sDate1); 
        Elektrorad z=new Elektrorad ();
    z.nettoverkaufspreis =15;
    z.bruttoverkaufspreis();
    z.hersteller= "Karl Meier";
    
    }}
 
Zuletzt bearbeitet:
Kirby_Sike

Kirby_Sike

Javascript:
public class Elektrorad {

    String kdatum;
    String gdatumlaufzeit;
Damit müsstest du es berechnen können, jedoch benutzt du den default Konstruktor, welche diese Variablen nicht initialisiert. Dein Konstruktor könnte so aussehen:
Java:
public Elektrorad(int kennzeichen, String hersteller, String kdatum, String gdatumlaufzeit, int nettoverkaufspreis){
    this.kennzeichen = kennzeichen;
    this.hersteller = hersteller;
    this.kdatum = kdatum;
    this.gdatumlaufzeit = gdatumlaufzeit;
    this.nettoverkaufspreis = nettoverkaufspreis;
}
BTW. bitte stecke deine main Methode in eine separate Klasse ;)
 
Zuletzt bearbeitet:
B

Black Kong

Hallo,
vielen Dank für die schnelle Antwort.
Habe es mal wie von dir empfohlen versucht, das mit dem Konstruktur hat eigentlich recht gut geklappt, aber meine Main Methode ein eine neue Klasse zu stecken klappt bei mir irgendwie nicht. Zudem klappt meine Rechnung für den Bruttoverkaufspreis nicht mehr, da void nicht akzeptiert wird. Und beim Datum hakt es leider immer noch, wenn ich es davor
Javascript:
package elektrorad;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Elektrorad {
    int kennzeichen;
    String hersteller;
    String kdatum;
    String gdatumlaufzeit;
    int nettoverkaufspreis;
    double bruttoverkaufspreis;
    public Elektrorad(int kennzeichen, String hersteller, String kdatum, String gdatumlaufzeit, int nettoverkaufspreis, double bruttoverkaufspreis){
    this.kennzeichen = kennzeichen;
    this.hersteller = hersteller;
    this.kdatum = kdatum;
    this.gdatumlaufzeit = gdatumlaufzeit;
    this.nettoverkaufspreis = nettoverkaufspreis;
    this.bruttoverkaufspreis=bruttoverkaufspreis;
}

    public void bruttoverkaufspreis () {
        System.out.println(0.19*nettoverkaufspreis+nettoverkaufspreis);
    
    }


  

    public static void main(String[] args)throws Exception {
        
  
        Elektrorad may= new Elektrorad (15,"Hermes","1/1/2019","1/1/2020",200,0.19);
        System.out.print("Das Kennzeichen ist: ");
        System.out.println(may.kennzeichen);
        System.out.print("Der Hersteller heißt: ");
        System.out.println(may.hersteller);
        System.out.print("Das Kaufdatum war der: ");
        System.out.println(may.kdatum);
        System.out.println(may.nettoverkaufspreis);
        String sDate1="1/1/2019";
    Date date1=new SimpleDateFormat("dd/MM/yyyy").parse(sDate1);
    System.out.println(sDate1);
      
      
      
  
    }}
 
T

temi

Was heißt den jeweils "klappt nicht"? Mit konkreten Fehlermeldungen wäre dir besser zu helfen.
 
B

Black Kong

Was heißt den jeweils "klappt nicht"? Mit konkreten Fehlermeldungen wäre dir besser zu helfen.
Hallo,
habe in der neuen Klasse versucht ein neues Objekt zu erstellen und dann halt diese Methoden darauf laufen zu lassen.
Leider kam ganze Zeit ein Fehlermeldung auf Netbeans, so dass ich kein neues Objekt erzeugen konnte.
 
Kirby_Sike

Kirby_Sike

Hallo,
habe in der neuen Klasse versucht ein neues Objekt zu erstellen und dann halt diese Methoden darauf laufen zu lassen.
Leider kam ganze Zeit ein Fehlermeldung auf Netbeans, so dass ich kein neues Objekt erzeugen konnte.
Ist die Klasse im selben package? Denn wenn nicht, dann musst du sie in den Build Path einbinden ;)
 
B

Black Kong

Sorry bin noch ein recht blutiger Anfänger hier in Java, habe ein neues Projekt erstellt und dann, dass selbe eingegeben wie schon beim vorherigen.
Javascript:
package programm;


public class Programm {

  
    public static void main(String[] args) {
       Elektrorad mya= new Elektrorad(15,"Hermes","1/1/2019","1/1/2020",200,0.19);
    }
    
}
 
Kirby_Sike

Kirby_Sike

Sorry bin noch ein recht blutiger Anfänger hier in Java, habe ein neues Projekt erstellt und dann, dass selbe eingegeben wie schon beim vorherigen.
Javascript:
package programm;


public class Programm {


    public static void main(String[] args) {
       Elektrorad mya= new Elektrorad(15,"Hermes","1/1/2019","1/1/2020",200,0.19);
    }
  
}
Die Packages heißen zwar gleich, sind jedoch nicht dieselben ;) Du musst im vorherigen package eine Klasse erstellen und kein neues Java Projekt aufsetzen.

Sende mal ein Screenshot von deinem Java Projekt (also vom Package Explorer)
 
Kirby_Sike

Kirby_Sike

Eher nicht => programm vs. elektrorad

Ansonsten korrekt, kein neues Projekt, sondern nur eine neue Klasse anlegen.
Darauf hatte ich jetzt nicht geachtet :) Hatte es nur überflogen und gelesen, dass er ein neues Projekt erstellt hat... Das ändert jedoch trotzdem nichts an dem Problem und der Lösung die ich oben geschildert habe ;)
 
B

Black Kong

Darauf hatte ich jetzt nicht geachtet :) Hatte es nur überflogen und gelesen, dass er ein neues Projekt erstellt hat... Das ändert jedoch trotzdem nichts an dem Problem und der Lösung die ich oben geschildert habe ;)
Jetzt klappt es :), leider habe ich das Problem mit dem Bruttoverkaufspreis nicht gelöst bekommen, das void nicht akzeptiert wird.
Javascript:
package elektrorad;
import java.text.SimpleDateFormat; 
import java.util.Date; 

public class Elektrorad {
    int kennzeichen;
    String hersteller;
    String kdatum;
    String gdatumlaufzeit;
    int nettoverkaufspreis;
    double bruttoverkaufspreis;
    public Elektrorad(int kennzeichen, String hersteller, String kdatum, String gdatumlaufzeit, int nettoverkaufspreis, double bruttoverkaufspreis){
    this.kennzeichen = kennzeichen;
    this.hersteller = hersteller;
    this.kdatum = kdatum;
    this.gdatumlaufzeit = gdatumlaufzeit;
    this.nettoverkaufspreis = nettoverkaufspreis;
    this.bruttoverkaufspreis=bruttoverkaufspreis;
}

    public void bruttoverkaufspreis () {
        System.out.println(0.19*nettoverkaufspreis+nettoverkaufspreis);
      
    }

}
Code:
package elektrorad;

import java.text.SimpleDateFormat;
import java.util.Date;


public class NewClass {
    public static void main(String[] args)throws Exception  {
  
         Elektrorad may= new Elektrorad (15,"Hermes","1/1/2019","1/1/2020",200,0.19);
        System.out.print("Das Kennzeichen ist: ");
        System.out.println(may.kennzeichen);
        System.out.print("Der Hersteller heißt: ");
        System.out.println(may.hersteller);
        System.out.print("Das Kaufdatum war der: ");
        System.out.println(may.kdatum);
        System.out.println(may.nettoverkaufspreis);
        String sDate1="1/1/2019"; 
    Date date1=new SimpleDateFormat("dd/MM/yyyy").parse(sDate1); 
    System.out.println(sDate1); 
}
 
Kirby_Sike

Kirby_Sike

Jetzt klappt es :), leider habe ich das Problem mit dem Bruttoverkaufspreis nicht gelöst bekommen, das void nicht akzeptiert wird.
Javascript:
package elektrorad;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Elektrorad {
    int kennzeichen;
    String hersteller;
    String kdatum;
    String gdatumlaufzeit;
    int nettoverkaufspreis;
    double bruttoverkaufspreis;
    public Elektrorad(int kennzeichen, String hersteller, String kdatum, String gdatumlaufzeit, int nettoverkaufspreis, double bruttoverkaufspreis){
    this.kennzeichen = kennzeichen;
    this.hersteller = hersteller;
    this.kdatum = kdatum;
    this.gdatumlaufzeit = gdatumlaufzeit;
    this.nettoverkaufspreis = nettoverkaufspreis;
    this.bruttoverkaufspreis=bruttoverkaufspreis;
}

    public void bruttoverkaufspreis () {
        System.out.println(0.19*nettoverkaufspreis+nettoverkaufspreis);
     
    }

}
Code:
package elektrorad;

import java.text.SimpleDateFormat;
import java.util.Date;


public class NewClass {
    public static void main(String[] args)throws Exception  {
 
         Elektrorad may= new Elektrorad (15,"Hermes","1/1/2019","1/1/2020",200,0.19);
        System.out.print("Das Kennzeichen ist: ");
        System.out.println(may.kennzeichen);
        System.out.print("Der Hersteller heißt: ");
        System.out.println(may.hersteller);
        System.out.print("Das Kaufdatum war der: ");
        System.out.println(may.kdatum);
        System.out.println(may.nettoverkaufspreis);
        String sDate1="1/1/2019";
    Date date1=new SimpleDateFormat("dd/MM/yyyy").parse(sDate1);
    System.out.println(sDate1);
}
Was meinst du mit void wird nicht akzeptiert? Du kannst den Wert doch zurück geben ;)
 
T

temi

Deine Methode definiert keinen Rückgabewert (= void)
Java:
public void bruttoverkaufspreis()
Wenn sie einen Wert zurückgeben soll, dann musst du einen Rückgabetyp angeben:
Java:
public double bruttoverkaufspreis() // Rückgabewert vom Typ double
In der Methode musst du dann mit "return" dein errechnetes Ergebnis vom Typ double zurückgeben.

Damit funktioniert dann auch
Java:
System.out.println(may.bruttoverkaufspreis()); // Aufruf der Methode bruttoverkaufspreis() und Ausgabe des Ergebnisses
ABER

Deine Methode gibt ja das Ergebnis innerhalb der Methode direkt aus und das sollte auch funktionieren. Was meinst du also mit "void wird nicht akzeptiert"?
 
F

fhoffmann

Du hast ein Member bruttoverkaufspreis und eine Methode bruttoverkaufspreis.
Das ist eine schlechte Idee.
Ich weiss zwar nicht - und will es auch gar nicht wissen - wann wer aufgerufen wird, aber ich würde solche Zweideutigkeiten immer vermeiden!
 
Zuletzt bearbeitet:
mihe7

mihe7

Du hast ein Member bruttoverkaufspreis und eine Methode bruttoverkaufspreis.
Das ist eine schlechte Idee.
Ja, das ist richtig aber zumindest technisch kein Problem.

Jetzt klappt es :), leider habe ich das Problem mit dem Bruttoverkaufspreis nicht gelöst bekommen, das void nicht akzeptiert wird.
Bah, drück im Editor von NetBeans mal Alt+Shift+F - die Formatierung ist ja fürchterlich.

Dann frage ich mich: wofür brauchst Du eine Variable für den Bruttoverkaufspreis, wenn dieser doch berechnet wird? Deiner main-Methode nach ist das doch der MwSt-Satz...
 
Thema: 

Methoden Ausgeben Aufgabe

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben