Сейчас я работаю над базовой java-программой, которая принимает несколько параметров в конструктор для чашки кофе. Это достаточно легко, но у меня возникла проблема с созданием метода суммирования количества чашек кофе, которые я создал.Как суммировать количество экземпляров объекта в Java?
До сих пор это класс UseCoffee я создал:
public class UsesCoffee{
public static void main(String args[]) {
System.out.println("cups created: " + Coffee.totalCups());
Coffee cup1 = new Coffee(350, "mint", true);
System.out.println("cup1: " + cup1);
Coffee cup2 = new Coffee(500, "mocha", false);
System.out.println("cups created: " + Coffee.totalCups());
System.out.println("cup2: " + cup2);
Coffee cup3 = new Coffee(350, "no flavour used", false);
cup3.doubleSize();
System.out.println("cup3: " + cup3);
Coffee cup4 = new Coffee(-10, "mocha", false);
System.out.println("cup4: " + cup4);
System.out.println("cups created: " + Coffee.totalCups());
if (Coffee.bigger(cup3,cup2))
System.out.println("cup3 is bigger than cup2");
if (Coffee.bigger(cup1,cup2))
System.out.println("cup1 is bigger than cup3");
if (Coffee.bigger(cup1,cup1))
System.out.println("cup1 is bigger than itself");
} // end main
} // end UsesCoffee
И это кофе класса я создал:
public class Coffee {
private int coffeeVol;
private String coffeeFlav;
private boolean yesCream;
public Coffee(int volume, String flavour, boolean cream) {
this.coffeeFlav = flavour;
this.coffeeVol = volume;
this.yesCream = cream;
if (volume < 0) {
System.out.println("error: negative size. Defaultsize of 250 ml used");
coffeeVol = 250;
}
}
public String toString() {
return coffeeVol +"ml, " + coffeeFlav + ", " + yesCream;
} // end toString
public static int totalCups() {
//THIS IS WHERE I'M HAVING TROUBLE
}
public int doubleSize() {
coffeeVol = coffeeVol*2;
return coffeeVol;
}
}
Есть ли способ суммировать количество чашек кофе? Я действительно потерян в этом отношении, и любая помощь приветствуется!
возможно дубликат [? Как подсчитать количество экземпляров определенного класса в дереве наследования, созданный явно] (http://stackoverflow.com/questions/21013349/how- to-count-the-number-of-the-the-specific-class-in-inheritance-tree) –
Я ничего здесь не расширяю, просто звоню из другого класса. –
Да, но решение должно по-прежнему применяться. Трюк заключается в объявлении статической переменной счетчика и приращении ее в конструкторе. –