Konstruktoren + Hilfe

Status
Nicht offen für weitere Antworten.

h4nnes

Mitglied
Entwerfen Sie eine Java-Klasse MotherBoard mit passenden Attributen, Konstruktoren und Methoden. Lassen Sie sich dabei von Bild 4.1 leiten. Ihr Entwurf soll beispielhaft den Auf-bau einer Java-Klasse mit den wichtigsten Syntax-Elementen zeigen. Insgesamt kommt es nicht auf Vollständigkeit an, sondern auf beispielhafte und typische Modellgrößen.

Implementieren Sie eine Java-Klasse MotherBoard
Verlangt sind • 2 Klassenvariablen
• Repräsentative Auswahl an Instanzvariablen (Objektvariablen)
• 3 Konstruktoren
• 6 Methoden, davon je 3 set- und get-Methoden()


ich habe das ganze jetzt mal so versucht:

Code:
public class Motherboard
{
  private static int preis;
  private static String name;
  private static String bestellnummer;

  public Motherboard()
  {

  }
  /*public Motherboard(int pr)
  {
    this preis = pr;
  } */
  public Motherboard(int pr,String name, String bestelln)
  {
    this.preis = pr;
    this.name = name;
    this.bestellnummer = bestelln;
  }

  public void setName(String s)
  {
    name = s;
  }
  public String getName()
  {
    return name;
  }

  public void setBestellnummer(String n)
  {
    bestellnummer = n;
  }
  public String getBestellnummer()
  {
    return bestellnummer;
  }

  public void setPreis(int n)
  {
    preis = n;
  }
  public int getPreis()
  {
    return preis;
  }

}

und zum ausführen:

Code:
public class MotherboardTest
{
  public static void main(String[] args)
  {

    System.out.println("\n\t+--------------------------------------");
    Motherboard m1 = new Motherboard("Asus1",50,"dfgdfg");
    System.out.println("\t| Artikel:"+ m1.getName() );
    System.out.println("\t| Preis: "+ m1.getPreis()+"€" );
    System.out.println("\t| Bestellnummer:"+ m1.getBestellnummer() );
    System.out.println("\t+--------------------------------------");
    
  }
}


ich bekomme ständig diesen fehler:

Compiliere D:\Johannes\FH Albsig\Praktika\java\Übungen\motherboard\MotherboardTest.java mit Java-Compiler
MotherboardTest.java:7:22: cannot find symbol
symbol : constructor Motherboard(java.lang.String,int,java.lang.String)
location: class Motherboard
Motherboard m1 = new Motherboard("Asus1",50,"dfgdfg");
^
1 error


und wie kann ich es machen um mehrere konstruktoren einzubinden, ich habe es wie oben mal versucht, aber es hat nicht so ganz geklappt, deshalb hab ich einen auskommentiert.

vielen dank schonmal
 

Der Müde Joe

Top Contributor
java will

Motherboard(java.lang.String,int,java.lang.String)

und du hast

public Motherboard(int pr,String name, String bestelln)


detlicher:
(String,int,String) vs (int,String,String)
 

h4nnes

Mitglied
ah, das hätt ich auch selber sehen können!
okay vielen dank!

noch ne frage, wenn 3 konstruktoren verlangt sind, dann kann ich das ja so machen oder ?

public Motherboard()
{

}
public Motherboard(String name)
{
this.name = name;
}
public Motherboard(String name,int pr, String bestelln)
{
this.preis = pr;
this.name = name;
this.bestellnummer = bestelln;
}

und klassenvariablen werden mit static vereinbart oder? somit hätte ich drei oder ?
 

Der Müde Joe

Top Contributor
static = es existier nur 1 MAL

dh. preis ... gibt es nur 1 MAL
dh. 10 motherboards aber nur 1 Preis

falls du je Motherb ein Preis willst dürfen es nicht statisch sein

3 Konstruktoren sind nie verlangt.
Es kommt drauf an was du benötigst.
Meist reicht einer aus.
 

JPKI

Top Contributor
Warum deklarierst du Klassenvariablen als static? Wenn du sie im Konstruktor initalisierst, gehören sie zu deinem Objekt. Static geht zwar auch, ist aber unnötig.

Noch was:

Wenn du den Konstruktor
Code:
public Motherboard() {
}
verwendest, werden aber keine Variablen initalisiert.
Beim Abfragen bekämst du demnach (warscheinlich) eine NullPointerException.

Ich würde es so machen:

Code:
private int preis;
private String name;
private String bestellnummber;

public Motherboard() {

 this("",0,"");
}

public Motherboard(String name) {

 this(name,0,"");
}

public Motherboard(String name, int preis, String bestellnummer) {
  this.name = name;
  this.preis = preis;
  this.bestellnummer = bestellnummer;
 }
 

h4nnes

Mitglied
das mit dem static hab ich behoben, danke

und mit dem leeren konstruktor, den hab ich genommen, dass ich eben einen hab, da die aufgabe hieß, man müsse 3 konstruktoren verwenden, auch wenn man es mit nur einem machen kann, deshalb der leere konstruktor, das ist doch okay oder ?
 

h4nnes

Mitglied
ich bins nochmal und zwar will ich jetzt noch klassenvariablen einfügen und zwar der hersteller. alle motherboards haben den selben hersteller. wie kann ich jetzt machen, dass er mit bei jedem konstruktor noch den hersteller dazu ausgibt?

die klassenvariable schaut so aus:
private static String hersteller = "Shuttle";


momentan sieht meine ausgabe für ein motherboard z.B. so aus:
+--------------------------------------
| Artikel:Asus1
| Preis: 50 Euro
| Bestellnummer:dfgdfg
+--------------------------------------

Code:
public class Motherboard
{
  private int preis;
  private String name;
  private String bestellnummer;
  
  private static String hersteller = "Shuttle";
  
    public Motherboard()
  {

  }
  public Motherboard(String name)
  {
    this.name = name;
  }
  public Motherboard(String name,int pr, String bestelln)
  {
    this.preis = pr;
    this.name = name;
    this.bestellnummer = bestelln;

  }

  public void setName(String s)
  {
    name = s;
  }
  public String getName()
  {
    return name;
  }

  public void setBestellnummer(String n)
  {
    bestellnummer = n;
  }
  public String getBestellnummer()
  {
    return bestellnummer;
  }

  public void setPreis(int n)
  {
    preis = n;
  }
  public int getPreis()
  {
    return preis;
  }



}


und für die ausgabe:

Code:
public class MotherboardTest
{
  public static void main(String[] args)
  {

    System.out.println("\n\t+--------------------------------------");
    Motherboard m1 = new Motherboard("Asus1",50,"dfgdfg");
    System.out.println("\t| Artikel:"+ m1.getName() );
    System.out.println("\t| Preis: "+ m1.getPreis()+" Euro" );
    System.out.println("\t| Bestellnummer:"+ m1.getBestellnummer() );
    System.out.println("\t+--------------------------------------");
    
  }
}
 

DaKo

Bekanntes Mitglied
Du solltest in der Klasse eine Methode getHersteller definieren, die dir den Hersteller zurückgibt und in der Testklasse gibst du diesen analog zu den anderen attributen aus.
 

h4nnes

Mitglied
aber der hersteller "shuttle" ist ja überall der selbe, den ich ja so schon definiert habe oder ?
private static String hersteller = "Shuttle";

edit problem gelöst!
die klassenvariable darf nicht private sein

static final String hersteller = "Shuttle";

dann gehts ganz einfach in meiner ausgabe mit

System.out.println("\t| Hersteller:"+m1.hersteller);
 

Tobias

Top Contributor
Da dein Prof/Lehrer/ausbilder in der Aufgabenstellung explizit nach "beispielhafte[n] und typische[n] Modellgrößen" fragt, solltest du vielleicht sowas wie Konstruktor-Chaining verwenden, um zu beweisen, dass du weißt was das ist.

Die Konstruktoren rufen sich also gegenseitig auf, z.B.:

Code:
public MainBoard() {
    this("keine Bezeichnung");
}

public MainBoard(String bezeichnung) {
    this.bezeichnung = bezeichnung;
}

mpG
Tobias[/code]
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Brauche Hilfe beim arbeiten mit Konstruktoren Java Basics - Anfänger-Themen 20
N Verschiedene Konstruktoren mit gleichen Datentypen Java Basics - Anfänger-Themen 8
C Konstruktoren und Variablen Java Basics - Anfänger-Themen 42
lougoldi Verkettung von Methoden und Konstruktoren Java Basics - Anfänger-Themen 4
J Konstruktoren und Grafik Java Basics - Anfänger-Themen 3
A Cannot find symbol mit Konstruktoren Java Basics - Anfänger-Themen 27
C Objekte und Konstruktoren Java Basics - Anfänger-Themen 2
M Methodenaufrufe im Konstruktoren Java Basics - Anfänger-Themen 31
A Konstruktoren Vererbung Java Basics - Anfänger-Themen 3
W Vererbung, abstract und Konstruktoren Java Basics - Anfänger-Themen 30
M Vererbung Konstruktoren mit festen Werte Java Basics - Anfänger-Themen 2
F Mehrere Konstruktoren? Wofür? Java Basics - Anfänger-Themen 21
J Konstruktoren in Initialisierungsblöcke Java Basics - Anfänger-Themen 6
T Konstruktoren Java Basics - Anfänger-Themen 25
D was bedeutet this. bei Konstruktoren? Java Basics - Anfänger-Themen 4
C Konstruktoren und Vererbung Java Basics - Anfänger-Themen 2
C Die Klasse Menge mit Konstruktoren und einfachen Methoden Java Basics - Anfänger-Themen 5
F Mehrere Konstruktoren Java Basics - Anfänger-Themen 10
G Was ist der Nutzen von generischen Konstruktoren? Java Basics - Anfänger-Themen 4
Q Methoden Konstruktoren anlegen Java Basics - Anfänger-Themen 5
B Objekte in Konstruktoren übergeben Java Basics - Anfänger-Themen 5
D Zähler nicht sichtbar (Thema: Konstruktoren) Java Basics - Anfänger-Themen 2
A Überladen von Konstruktoren Java Basics - Anfänger-Themen 2
V Konstruktoren Java Basics - Anfänger-Themen 15
C Klassen StackOverflow bei erster Nutzung von Klassen/Konstruktoren Java Basics - Anfänger-Themen 9
F Konstruktoren Java Basics - Anfänger-Themen 4
M Erste Schritte Verständnis Problem Konstruktoren Java Basics - Anfänger-Themen 13
Y Klassen, Vererbung, Konstruktoren Java Basics - Anfänger-Themen 13
B Klassen Unterschied Konstruktoren. Java Basics - Anfänger-Themen 3
C Erste Schritte Konstruktoren verstehen Java Basics - Anfänger-Themen 7
W OOP Konstruktoren Erklärung Java Basics - Anfänger-Themen 14
N Abarbeitungsreihenfolge von Konstruktoren Java Basics - Anfänger-Themen 12
O Klassen und Konstruktoren Java Basics - Anfänger-Themen 7
V Konstruktoren -> Funktionsaufrufe Java Basics - Anfänger-Themen 7
Q Konstruktoren und Methoden Java Basics - Anfänger-Themen 2
C Konstruktoren Java Basics - Anfänger-Themen 7
J Konstruktoren Java Basics - Anfänger-Themen 10
M Konstruktoren & Veerbung Java Basics - Anfänger-Themen 6
T Konstruktoren Java Basics - Anfänger-Themen 6
P Enum Attribut in Konstruktoren Java Basics - Anfänger-Themen 10
R Vererbung Konstruktoren nicht erkannt Java Basics - Anfänger-Themen 17
H Klassen, Konstruktoren, Instanzen etc Java Basics - Anfänger-Themen 6
J OOP Konstruktoren, setMethode, getMethode usw. Java Basics - Anfänger-Themen 7
A überladene Konstruktoren Java Basics - Anfänger-Themen 7
L Frage zu Konstruktoren und dem this Operator Java Basics - Anfänger-Themen 16
W 2 Konstruktoren Java Basics - Anfänger-Themen 8
B Vererbung und Konstruktoren Java Basics - Anfänger-Themen 33
N Vererbung von Konstruktoren mit Parametern Java Basics - Anfänger-Themen 7
S Konstruktoren verketten Java Basics - Anfänger-Themen 6
A Konstruktoren sollen sich gegenseitig aufrufen Java Basics - Anfänger-Themen 10
B Konstruktoren Sichtbarkeit Java Basics - Anfänger-Themen 2
K Kann man Private-Konstruktoren doch aurufen? Java Basics - Anfänger-Themen 8
E Konstruktoren und Methoden Java Basics - Anfänger-Themen 10
E OOP individual + standard-Konstruktoren Java Basics - Anfänger-Themen 9
S Konstruktoren? Java Basics - Anfänger-Themen 5
K Konstruktoren Java Basics - Anfänger-Themen 13
H Konstruktoren – super! Java Basics - Anfänger-Themen 3
L Geschachtelte Konstruktoren Java Basics - Anfänger-Themen 4
hdi Kleine Design/Convention Frage zu Konstruktoren Java Basics - Anfänger-Themen 4
J Vererbung und Konstruktoren Java Basics - Anfänger-Themen 14
J Problem mit Konstruktoren Java Basics - Anfänger-Themen 2
G Überladen von Konstruktoren mit unterschiedlichen Datentypen Java Basics - Anfänger-Themen 4
H Befehl mit Konstruktoren Java Basics - Anfänger-Themen 2
L Konstruktoren bei Vererbung Java Basics - Anfänger-Themen 13
Z wie kann ich überladene Konstruktoren "umleiten"? Java Basics - Anfänger-Themen 11
D Blöde(?) Frage zu Konstruktoren und set-Methoden Java Basics - Anfänger-Themen 3
G Interface und Konstruktoren Java Basics - Anfänger-Themen 3
G Frage zu Konstruktoren Java Basics - Anfänger-Themen 12
G Verständnisfrage zu Konstruktoren Java Basics - Anfänger-Themen 5
G Konstruktoren Java Basics - Anfänger-Themen 9
A Konstruktoren überladen Java Basics - Anfänger-Themen 9
H Konstruktoren werden nie geerbt Java Basics - Anfänger-Themen 3
O Vor-/Nachteile/Unterschiede von Konstruktoren und Methoden Java Basics - Anfänger-Themen 3
Bierhumpen 2 Konstruktoren Java Basics - Anfänger-Themen 15
T mehrere Konstruktoren für eine Klasse Java Basics - Anfänger-Themen 7
J Instantvariablen und Konstruktoren Java Basics - Anfänger-Themen 2
Y Vererben - Konstruktoren Java Basics - Anfänger-Themen 2
Z übergabe von string[] an konstruktoren oder methoden Java Basics - Anfänger-Themen 3
L Klassen, Vererbung und Konstruktoren Java Basics - Anfänger-Themen 10
S Frage zu Konstruktoren Java Basics - Anfänger-Themen 7
G Problem mit Gültigkeit von Variabeln und Konstruktoren Java Basics - Anfänger-Themen 4
C Konstruktoren Java Basics - Anfänger-Themen 4
G Konstruktoren (was, wozu, wieso, warum) Java Basics - Anfänger-Themen 4
Kerstininer Vererbung Hilfe beim lernen von Objektorientierung für eine Klausur Java Basics - Anfänger-Themen 10
R Umgebungsvariable java -cp gibt immer Java-Hilfe... Java Basics - Anfänger-Themen 3
E Hilfe bei rekursiver Funktion Java Basics - Anfänger-Themen 3
H pdf stempel - Hilfe erbeten Java Basics - Anfänger-Themen 6
KogoroMori21 Wann ist der richtige Zeitpunkt, um sich Hilfe zu suchen? (Bin Informatik-Student) Java Basics - Anfänger-Themen 10
A Hilfe beim Lesen von Pfaden und Systemvariablen Java Basics - Anfänger-Themen 3
F RegEx Hilfe Java Basics - Anfänger-Themen 5
S Hilfe bei Endlosschleife Java Basics - Anfänger-Themen 2
S Hilfe bei Praktischen Aufgaben von Arrays Java Basics - Anfänger-Themen 39
U Ich bräuchte Hilfe Java Basics - Anfänger-Themen 1
Say abstract class und Objekt erzeugen - Dringend Hilfe Java Basics - Anfänger-Themen 10
Justin4687 Benötige Hilfe bei folgender Aufgabe Java Basics - Anfänger-Themen 2
aero043 Hilfe bei BlueJ Hausübung Java Basics - Anfänger-Themen 27
S Hilfe zu einer Aufgabe Java Basics - Anfänger-Themen 5
P Hilfe gesucht Java Basics - Anfänger-Themen 11
D Hilfe bei Calculator Test Java Basics - Anfänger-Themen 15
R Hilfe bei Aufgabe Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben