Hoi,
Ik ben vrij nieuw voor java en ben dus een beetje aan het experimenteren.
Ik gebruik eclipse voor het programmeren en de Gui.
Ik probeer momenteel een kassa op te zetten.
Hiervoor heb ik dus 3 klasses Kassa, Bestelling en Bestellingregel. (Kassa is nu niet van belang)
De gui heeft twee knoppen die dezelfde methode oproepen met als parameter het type knop (in dit voorbeeld 1 knop voor drank en een andere voor eten) en als tweede parameter de prijs (1 voor drank en 10 eten)
In de klasse Bestelling heb ik een klasse variabele die bijhoud of er reeds een bestelling actief is.
als men dus op 1 van de twee knoppen klikt en er is geen actieve bestelling, dan word er eerst een instantie van Bestelling gemaakt alsook word de parameter op actief gezet, als er al eentje actief is is dit dus niet nodig.
hierna roep ik in beide gevallen een methode op die een regel aan de bestelling hoort toe te voegen. ( zo kan je in 1 bestelling een regel hebben voor drank en een regel hebben voor eten)
de methode addBestellingregel voegt dus een nieuwe instantie van het object Bestellingregel toe aan een array die aangemaakt is in de Bestelling klasse.
Tot hiertoe lijkt me dan ook alles goed te gaan
Wanneer ik dan de gevens wil uitlezen om ze te controleren, dan heeft elk object in de array dezelfde waarde.
Of ik schrijf de waardes dus niet juist weg, of ik lees ze niet goed uit.
Omdat ik de bomen niet meer zie door het bos had ik dus gehoopt op wat hulp hier.
Sorry als mijn post niet heel duidelijk moest zijn, het is lang geleden dat ik nog een forum gebruikte voor dit soort dingen.
Zie hieronder de code.
de methode die opgeroepen word als je op de knoppen klikt.
bij de knop drank gaan de waarder 1, 1 mee, bij de knop eten gaan de waarden 2, 10 mee.
De klasse Bestelling
De klasse Bestellingregel
als output krijg ik na 1 keer op de knop drank klikken dan
"1: 1"
wat helemaal klopt.
Maar als ik dan klik op de knop eten verwacht ik
"1: 1"
"2: 10"
maar krijg als output
"2 :10"
"2 : 10"
alle hulp is welkom!
Ik ben vrij nieuw voor java en ben dus een beetje aan het experimenteren.
Ik gebruik eclipse voor het programmeren en de Gui.
Ik probeer momenteel een kassa op te zetten.
Hiervoor heb ik dus 3 klasses Kassa, Bestelling en Bestellingregel. (Kassa is nu niet van belang)
De gui heeft twee knoppen die dezelfde methode oproepen met als parameter het type knop (in dit voorbeeld 1 knop voor drank en een andere voor eten) en als tweede parameter de prijs (1 voor drank en 10 eten)
In de klasse Bestelling heb ik een klasse variabele die bijhoud of er reeds een bestelling actief is.
als men dus op 1 van de twee knoppen klikt en er is geen actieve bestelling, dan word er eerst een instantie van Bestelling gemaakt alsook word de parameter op actief gezet, als er al eentje actief is is dit dus niet nodig.
hierna roep ik in beide gevallen een methode op die een regel aan de bestelling hoort toe te voegen. ( zo kan je in 1 bestelling een regel hebben voor drank en een regel hebben voor eten)
de methode addBestellingregel voegt dus een nieuwe instantie van het object Bestellingregel toe aan een array die aangemaakt is in de Bestelling klasse.
Tot hiertoe lijkt me dan ook alles goed te gaan
Wanneer ik dan de gevens wil uitlezen om ze te controleren, dan heeft elk object in de array dezelfde waarde.
Of ik schrijf de waardes dus niet juist weg, of ik lees ze niet goed uit.
Omdat ik de bomen niet meer zie door het bos had ik dus gehoopt op wat hulp hier.
Sorry als mijn post niet heel duidelijk moest zijn, het is lang geleden dat ik nog een forum gebruikte voor dit soort dingen.
Zie hieronder de code.
de methode die opgeroepen word als je op de knoppen klikt.
bij de knop drank gaan de waarder 1, 1 mee, bij de knop eten gaan de waarden 2, 10 mee.
Code:
if(Bestelling.getActive() == false){
Bestelling.setActive();
Bestelling bestelling = new Bestelling();
Bestelling.addBestellingregel(consumption, price);
for( Bestellingregel b : Bestelling.bestelling){
System.out.println(b.getConsumption() + ": " + b.getPrice()); // logging
}
}
else{
Bestelling.addBestellingregel(consumption, price);
System.out.println(""); // logging
for( Bestellingregel b : Bestelling.bestelling){
System.out.println(b.getConsumption() + ": " + b.getPrice()); // logging
}
}
De klasse Bestelling
Code:
public class Bestelling {
// instantieer de klasse variabele active die aangeeft of er reeds een bestelling open staat
private static boolean active = false;
// creer een arraylist die alle bestelregels beheerd
public static ArrayList<Bestellingregel> bestelling = new ArrayList<Bestellingregel>();
public Bestelling(){
}
// methode om een bestellingregel toe te voegen aan de arraylist bestelling
public static void addBestellingregel(int consumption, int price){
bestelling.add(new Bestellingregel(consumption, price));
}
}
De klasse Bestellingregel
Code:
public class Bestellingregel {
//instantieer de klasse variabelen voor cumsumptie en prijs
private static int consumption;
private static int price;
// ken de waarde van consumptie en prijs toe aan de klasse variabelen
public Bestellingregel(int consumption, int price){
Bestellingregel.consumption = consumption;
Bestellingregel.price = price;
}
// geef de consumptienr van de instantie van dit object
public int getConsumption(){
return consumption;
}
// geef de prijs van de instantie van dit object
public int getPrice(){
return price;
}
}
als output krijg ik na 1 keer op de knop drank klikken dan
"1: 1"
wat helemaal klopt.
Maar als ik dan klik op de knop eten verwacht ik
"1: 1"
"2: 10"
maar krijg als output
"2 :10"
"2 : 10"
alle hulp is welkom!