Konstruktor in Programm integrieren

Gouda

Mitglied
Hallo ich brauch mal wieder eure Hilfe ;)

Wir haben für den Praktikumsversuch, die Aufgabe in ein vorgegebenes Programm
einen Konstruktor einzubinden ;)

Eig. wird ja wenn man keinen manuell einbindet, ein Standardkonstruktor aufgerufen,
wir soll ihn aber manuell aufrufen.

Jetzt weiß ich, aber nich wie ich ihn aufrufen kann bzw. endültig einbinden kann und was er überhaupt genaues macht.

Also was ich weiß ist, wenn ich ihn aufrufe muss ich am Ende des Programmes,
noch etwas ändern.

Das Programm sieht so aus:

Java:
mport javax.swing.JOptionPane;

	class Widerstand3{

	//Attribute

	private int ohm;
	private int power;

	
	// Konstruktoren (werden nicht benötigt, Standardkonstruktor Wird automatisch erzeugt)
	
	
	//Methoden
	public int getohm () {
		return ohm;
}

	public int getpower() {
		return power;
}

	void setohm (int r) {
		ohm=r;

}
	void setpower (int p) {
		power=p;
}

}
//2.klasse
	
	

	public class Widerstand2 {
	


	public static void main(String []args) {


		final int ANZAHL_WIDERSTAND = 3;

	//errzeugt Array

		Widerstand3 widerstandArray[] = new Widerstand3 [ANZAHL_WIDERSTAND];
		for (int i = 0; i < widerstandArray.length;i++)
{
			widerstandArray[i] = new Widerstand3();
}
  
  		

		for(int i = 0;i < 3;i++) {
   		
     		
		String eingabe = JOptionPane.showInputDialog("Bitte geben Sie den  "+(i+1)+" Widerstand ein");
		int ausgabe = Integer.parseInt(eingabe);
		widerstandArray[i].setohm(ausgabe);
	}

		for (int i = 0;i < 3;i++) {
		String eingabe = JOptionPane.showInputDialog("Bitte geben Sie den  "+(i+1)+" Leistungswert ein");
		int ausgabe = Integer.parseInt(eingabe);
		widerstandArray[i].setpower(ausgabe);
}

		//Ausgabe

		for(int i = 0;i < 3;i++) {

		System.out.println(""+(i+1)+".Widerstand\t"+widerstandArray[i].getohm()+"\t"+widerstandArray[i].getpower());

		

}

}

}

Naja das ist das Programm, ich hoffe ihr könnt mir helfen.
 

Atze

Top Contributor
in welche der beiden klassen soll der konstruktor denn? soll er parameter haben? was soll er mit diesen parametern tun?

also einen öffentlichen nicht-parameterisierten konstruktor erzeugt man so

public WiderstandX(){}

aufgerufen wird er genau so wie der default konstruktor, also musst du da nichts ändern
 

nickname

Bekanntes Mitglied
Hi,

wenn du z.B. auf Vererbung hinaus willst, dann kann der Konstruktor der Superklasse (oder Vaterkl.)
in dem Konstruktor der Subklasse (oder Sohnkl.) mit "super()" aufgerufen werden.
Java:
class Vater
// beliebiger Code


//neue Klasse (Subklasse)
class Sohn extends Vater

public Sohne()
{
super()
....
}

Gouda hat gesagt.:
und was er überhaupt genaues macht
Der Konstruktor kannz.B. die privaten Variablen der Klasse initialisieren (mit anderen Werten belegen)
 

Gouda

Mitglied
Die Aufgabenstellung lautet:

"Ein elektrischer Widerstand wird im einfachsten fall durch seinen ohmschen Widerstandswert
und seiner elektrischen Leistung als Kenngröße bestimmt.
Schreiben sie eine Klass, welce als Objekt die Daten eines Widerstandes aufnehmen kann. In
dieser Klasse sollen die Kenngrößen als Attribute gespeichert werden. Diese Attriebute werden
über den Konstruktor initialisiert.
Die Klasse enthält im weiteren für jedes Attribut eine get- und eine set-Methode.

Schreiben sie eine Java-Anwendung, welche Werte für Widerstandswerte und Leistung eines
elektrischen Widerstandes einliest und in dem Widerstand Objekt speichert. Speichern Sie 3
Widerstände in einem Array, benutzen sie eine Schleife zum einlesen der Kenngrößen.
Die Anwendung liest danach die Daten aus den Widerstand Objekten aus, um sie dann auf den
Bildschirm auszugeben."

Das is meine Aufgabe,
das hab ich mit Hilfe eines Programmes geschrieben, welches von einem
Kollegen stammt (der is zwei Semester über mir).
Am Dienstag hat ein Mitkommiliton mit diesem Programm sein Testat machen wollen,
aber die Prüfer haben den fehlenden Konstruktor bemängelt.

Jetzt muss ich das Programm umschreiben und hab von Konstruktoren keine Ahnung.
 

nickname

Bekanntes Mitglied
Hi,
Java:
mport javax.swing.JOptionPane;
 
    class Widerstand3{
 
    //Attribute
 
    private int ohm;
    private int power;
 
    
    // Konstruktoren (werden nicht benötigt, Standardkonstruktor Wird automatisch erzeugt)
    public Wiederstand3(int ohm, int power)//<-- neu!!!!!
{
this.ohm = ohm;
this.power = power;
}
    
    //Methoden
    public int getohm () {
        return ohm;
}
 
    public int getpower() {
        return power;
}
 
    void setohm (int r) {
        ohm=r;
 
}
    void setpower (int p) {
        power=p;
}
 
}
//2.klasse
Gouda hat gesagt.:
Diese Attriebute werden
über den Konstruktor initialisiert. (aus der Aufgabe)
Ohnen eine parametisierten Konstruktor geht das nicht.

Gouda hat gesagt.:
Die Klasse enthält im weiteren für jedes Attribut eine get- und eine set-Methode.
Hast du ja schon

Java:
Mit Widerstand w = new Widerstand(150, 2);
werden deine Werte initialisiert.

Wenn du die Attribute als static definierst, können alle Instanzen der Klasse Widerstand auf diese
Werte zugreifen aber auch für immer ändern...

gruß nickname
 

Suinos

Bekanntes Mitglied
Gouda hat gesagt.:
mit Hilfe eines Programmes geschrieben, welches von einem
Kollegen stammt
nickname hat gesagt.:
bah.. spoonfeeding

Gouda hat gesagt.:
hab von Konstruktoren keine Ahnung
Warum?

Faulheit?
Dann kann ich dir versichern, dass du bei der nächsten Aufgabe genauso wenig weiterkommen wirst, wie jetzt.

Unwissenheit?
Im Internet gibt es einige Tutorials, die meisten auf Englisch, aber sicher auch manche in Deutsch, welche dir das Thema erklären können.
 

Gouda

Mitglied
@ nickname

danke hab jetzt die erste klasse umgeändert und in der zweiten die "150" und "2" eingefügt läuft auch ohne fehlermeldung durch.

heut und morgen nur noch mal reinsetzen und alles schritt für schritt durchgehen mir ein paar notizen machen.


Was mich wundert ist, das ich den Konstruktor in der zweiten klasse nich noch mal aufrufen brauch, oder hab ich was
falsch verstanden?
und warum ausgerechnet 150 und 2?
hab es grad mal mit 50 und 2 ausprobiert und läuft auch!

hm
 

nickname

Bekanntes Mitglied
hi,

Gouda hat gesagt.:
und warum ausgerechnet 150 und 2?
Die Zahlen warun nur Beipiele. Du kannst natürlich auch andere Werte verwenden. Musst du denn
auch mit Kommazahlen arbeiten?

Gouda hat gesagt.:
Was mich wundert ist, das ich den Konstruktor in der zweiten klasse nich noch mal aufrufen brauch, oder hab ich was
falsch verstanden?
hmm, versteht nicht so ganz was du meinst ???:L Meinst vllt, weil die Werte schon initialisiert sind und du auf diese zugreifen kannst??


gruß nickname
 

nickname

Bekanntes Mitglied
hi,

wenn du ein neues Widerstand-Objekt mit
Java:
Widerstand w2 = new Widerstand()
in der Klasse anlegst, wo nur dieser Konstruktor vorliegt
Java:
public Widerstand(int ohm, int power)
dann bekommst du natürlich einen Fehler, da dieser deinen "automatisch generierten" default Konstruktor
verdeckt. Du musst dann einen eigenen "Default" konstruktor anlegen,
Java:
public Widerstand()
{
   ;
}
(was man immer beser machen sollte) Damit siehst du auch, dass Konstrkutoren überladen werden können.

Gouda hat gesagt.:
was besagen die zahlen,
Die Zahlen sind nur Werte, die deine Variablen initialisieren.
Ich habe einfach so gedacht: 150 Ohm und 2 Volt. Dmit kann ich z.B. den Strom berechnen.

Es sind nur Werte, die du zum rechnen benutzen kannst. Wie gesagt, es können beliebige Werte
eingesetzt werden.

gruß nickname
 

Gouda

Mitglied
ich glaube, ich habs verstanden!!

also ich kann entweder einen normalen konstruktor benutzen (ohne werte in den klammern)
dann brauch ich beim new widerstand auch keine werte

oder halt mit werten arbeiten bzw. vorgeben
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Simples Programm - Fehler im Konstruktor Java Basics - Anfänger-Themen 2
W Null-Pointer trotz Konstruktor? Java Basics - Anfänger-Themen 9
M Konstruktor-Aufruf im Konstruktor, aber nicht am Anfang? Java Basics - Anfänger-Themen 4
T Schlüsselworte Schlüsselwort this im Konstruktor Java Basics - Anfänger-Themen 3
frager2345 Warum muss ich hier im Konstruktor meine Exeption nicht abfangen ? Java Basics - Anfänger-Themen 4
J Konstruktor Java Basics - Anfänger-Themen 18
frager2345 Java Singleton Muster -> Methode für Konstruktor mit Parametern Java Basics - Anfänger-Themen 3
G Welche Attribute kommen in den Konstruktor? Java Basics - Anfänger-Themen 5
M wird der Konstruktor nicht als 1. ausgeführt? Java Basics - Anfänger-Themen 13
G Konstruktor und update Java Basics - Anfänger-Themen 4
K Kopier-Konstruktor Java Basics - Anfänger-Themen 6
S Default Konstruktor Java Basics - Anfänger-Themen 7
M Konstruktor ohne Übergabe eines Wertes Java Basics - Anfänger-Themen 7
M Wie kann ich in einem Konstruktor die Methode eines anderen Interfaces mit den jeweiligen Parametern aufrufen? Java Basics - Anfänger-Themen 8
J Vier gewinnt in Java,Spieler Konstruktor Java Basics - Anfänger-Themen 8
kxrdelis Konstruktor für ein Rechtwinkliges Dreieck Java Basics - Anfänger-Themen 10
Zeppi OOP Bruch kürzen im Konstruktor Java Basics - Anfänger-Themen 2
HorstSchröder Konstruktor mit Initialwert Java Basics - Anfänger-Themen 1
C Konstruktor ab serialisiertem Objekt Java Basics - Anfänger-Themen 4
J Input/Output Konstruktor ergänzen, der zur Datei mit einem Objekt passt Java Basics - Anfänger-Themen 0
InfinityDE Problem mit Datenübergabe an Konstruktor Java Basics - Anfänger-Themen 7
B Konstruktor mit Array als Parameter Java Basics - Anfänger-Themen 3
G Variablen Array Länge über den Konstruktor definieren Java Basics - Anfänger-Themen 4
L Konstruktor für eine Map-Datei/Map-Datei einlesen Java Basics - Anfänger-Themen 5
C Interface und Konstruktor Java Basics - Anfänger-Themen 1
H Generische Konstruktor Java Basics - Anfänger-Themen 12
MiMa Seltsames Verhalten im Konstruktor Java Basics - Anfänger-Themen 6
S Konstruktor passt nicht zum Rest Java Basics - Anfänger-Themen 11
C Unbekannter "Konstruktor"?? Java Basics - Anfänger-Themen 10
W OOP Warenlager mit Array(Konstruktor, Methoden) Java Basics - Anfänger-Themen 39
R Objekt in Konstruktor ist nicht zulässig Java Basics - Anfänger-Themen 5
A Mit einer Methode den Konstruktor aufrufen? Java Basics - Anfänger-Themen 2
B Warum können super() und this() nicht gemeinsam in einem Konstruktor verwendet werden? Java Basics - Anfänger-Themen 7
K Konstruktor für ein Objekt mit Zugriffsmethoden Java Basics - Anfänger-Themen 7
H Unterschied Konstruktor und Klassenname x = new Klassenname; Java Basics - Anfänger-Themen 3
B Klassen Array Parameter im Konstruktor? Java Basics - Anfänger-Themen 4
E Konstruktor mit Methode Java Basics - Anfänger-Themen 7
E ArithmeticException im Konstruktor Java Basics - Anfänger-Themen 4
S Konstruktor, Objekte Java Basics - Anfänger-Themen 4
F Konstruktor richtig implementiert? Frage zu Benutzereingaben... Java Basics - Anfänger-Themen 9
W Typecastin im Konstruktor? Java Basics - Anfänger-Themen 2
A Variablen Variablenwert über Konstruktor ändern Java Basics - Anfänger-Themen 3
F Arrays im Konstruktor Java Basics - Anfänger-Themen 5
C Konstruktor mit und ohne Parameterliste Java Basics - Anfänger-Themen 13
L Instanzvariablen, Veerbung, Konstruktor Java Basics - Anfänger-Themen 32
E Best Practice Konstruktor mit bestehender Intanz der gleichen Klasse aufrufen Java Basics - Anfänger-Themen 4
E Plausibilitätsprüfung in dem Konstruktor mit Ausnahmebehandlung Java Basics - Anfänger-Themen 8
A Aufruf von Konstruktor , obwohl 2 Parameter weggelassen werden Java Basics - Anfänger-Themen 7
A Aufruf von Konstruktor , obwohl 2 Parameter weggelassen werden Java Basics - Anfänger-Themen 0
D Compiler-Fehler Konstruktor von Superklasse übernehmen Java Basics - Anfänger-Themen 1
P Counter im Konstruktor Java Basics - Anfänger-Themen 11
J toString-Methode in Verbindung mit varArgs-Konstruktor Java Basics - Anfänger-Themen 18
I Einträge in den Konstruktor Java Basics - Anfänger-Themen 3
Aprendiendo [JAVA-Syntax] (int... variable) bei einem Konstruktor Java Basics - Anfänger-Themen 8
J Superklassen Konstruktor Verständnisfrage Java Basics - Anfänger-Themen 1
G Int-Array im Konstruktor Parameter Java Basics - Anfänger-Themen 37
T Datentypen Warum mit Konstruktor Objektvariablen initalisieren? Java Basics - Anfänger-Themen 19
A Vererbung bei Klassen mit Objekt der Klasse im Konstruktor Java Basics - Anfänger-Themen 4
P Konstruktor. Java Basics - Anfänger-Themen 4
D Best Practice Objekt automatisch im Konstruktor füllen? Java Basics - Anfänger-Themen 9
D Objekt oder Konstruktor Java Basics - Anfänger-Themen 2
F Java default Konstruktor Java Basics - Anfänger-Themen 1
R Fragen über den Konstruktor Java Basics - Anfänger-Themen 0
T Konstruktor mit Referenzdatentypen Java Basics - Anfänger-Themen 5
H Klassen Konstruktor Parameter als Instanzvariablen zwischen speichern... Java Basics - Anfänger-Themen 11
T setter im Konstruktor einbauen? Java Basics - Anfänger-Themen 8
R ArrayList im Konstruktor. Java Basics - Anfänger-Themen 4
T Konstruktor Probleme Java Basics - Anfänger-Themen 3
J Wie lässt sich der Konstruktor einer Klasse einer Funktion einer Klasse nutzen. Java Basics - Anfänger-Themen 4
S Variable, die im Konstruktor gesetzt wird, wird nicht gefunden vom Compiler. Java Basics - Anfänger-Themen 4
C Generic im Konstruktor Java Basics - Anfänger-Themen 1
F Privater Konstruktor und statische Methoden Java Basics - Anfänger-Themen 4
W Konstruktor von FileInputStream nicht gefunden Java Basics - Anfänger-Themen 18
B Methoden Konstruktor im Konstruktor aufrufen Java Basics - Anfänger-Themen 2
N Aufgabe: Pizza Konstruktor mit mehreren beliebigen Durchmesser/Preiskombinationen Java Basics - Anfänger-Themen 8
K arraygröße durch variablen Konstruktor? Java Basics - Anfänger-Themen 7
K ArrayList in Konstruktor - wie späterer Zugriff Java Basics - Anfänger-Themen 2
G Verwendung von Konstruktor Java Basics - Anfänger-Themen 8
X Übergabeparameter Konstruktor (File) Java Basics - Anfänger-Themen 13
K Wieso muss man finale statische Variablen sofort oder eben im Konstruktor initialisieren? Java Basics - Anfänger-Themen 2
C Konstruktor in Abstrakten Klassen Java Basics - Anfänger-Themen 4
B Konstruktor Problem Java Basics - Anfänger-Themen 8
Joew0815 konstruktor und damit erstellte objekte Java Basics - Anfänger-Themen 1
K Hashtable mit eigenen Konstruktor Java Basics - Anfänger-Themen 2
S Java Fragen Konstruktor & Statische Methoden Java Basics - Anfänger-Themen 4
H Fehler im Konstruktor abfangen Java Basics - Anfänger-Themen 10
J Konstruktor Problem bei Vererbung Java Basics - Anfänger-Themen 1
I Java Eingabe aus einer anderen Klasse in eine andere an Konstruktor übergeben Java Basics - Anfänger-Themen 4
O Konstruktor und Default Konstruktor Java Basics - Anfänger-Themen 7
S Kapselung Objekt bei Übergabe an Konstruktor nicht initalisiert Java Basics - Anfänger-Themen 3
I Vererbung Frage zum Konstruktor Java Basics - Anfänger-Themen 5
Y Konstruktor - Setter/Getter Java Basics - Anfänger-Themen 3
P Konstruktor Java Basics - Anfänger-Themen 4
E Initialisierung von Attributen und Konstruktor Java Basics - Anfänger-Themen 0
H Compiler-Fehler NullPointerException bei .length, Konstruktor fehlerhaft? Java Basics - Anfänger-Themen 3
M Objekt Array an konstruktor übergeben und Initialisieren Java Basics - Anfänger-Themen 1
llabusch Vererbung Super Konstruktor Java Basics - Anfänger-Themen 5
P Erste Schritte WindowBuilder erstellt Konstruktor wie zugreifen Java Basics - Anfänger-Themen 5
M Parameter von Konstruktor, der Superklassen-Konstruktor aufruft Java Basics - Anfänger-Themen 2
V Was soll alles in den Konstruktor? Java Basics - Anfänger-Themen 3

Ähnliche Java Themen


Oben