Moin
Ich starte gerade als Übungsprojekt einen Budget Manager.
Starten soll alles als einfache Konsolen Anwendung, aber es soll aufjedenfall erweiterbar sein, so dass ich es später als GUI Programm umsetzen kann.
Es sollen transaktionen hinzugefügt werden können, welche in dem Account gespeichert werden und das Guthaben beeinflussen.
Hier mal eine Blaupause, dachte es ist besser als es in Worte zu formulieren.
Mein Problem ist jetzt, dass ich jeder Transaktion eine Kategorie hinzufügen möchte, also zb Lebensmittel, Miete, etc.
Die Transaktionen sollen nach dieser Kategorie gefiltert werden können. Leider habe ich keine Ahnung wie ich Kategorie umsetzen soll.
Enum fällt aus, da Kategorien hinzugefügt werden können. Außerdem sind mir die Klassen
da sie identische Attribute haben, wäre statt ein Interface eine Abstrakte Klasse evtl eher angebracht?
Danke schonmal!
Ich starte gerade als Übungsprojekt einen Budget Manager.
Starten soll alles als einfache Konsolen Anwendung, aber es soll aufjedenfall erweiterbar sein, so dass ich es später als GUI Programm umsetzen kann.
Es sollen transaktionen hinzugefügt werden können, welche in dem Account gespeichert werden und das Guthaben beeinflussen.
Hier mal eine Blaupause, dachte es ist besser als es in Worte zu formulieren.
class Account {
private int balance;
private List<Income> incomes;
private List<Purchase> purchases;
}
interface Transaction {
void transaction(Account account);
}
class Purchase implements Transaction {
private int amount;
private String description;
//private Category category;
@Override
public void transaction(Account account) {
//Die Ausgabe wird der transactions List hinzugefügt und die balance
// dementsprechend verringert
}
}
class Income implements Transaction {
private int amount;
private String description;
//private Category category;
@Override
public void transaction(Account account) {
//Die Einnahme wird der Incomes List hinzugefügt und die balance
// dementsprechend verringert
}
}
[/CODE]
private int balance;
private List<Income> incomes;
private List<Purchase> purchases;
}
interface Transaction {
void transaction(Account account);
}
class Purchase implements Transaction {
private int amount;
private String description;
//private Category category;
@Override
public void transaction(Account account) {
//Die Ausgabe wird der transactions List hinzugefügt und die balance
// dementsprechend verringert
}
}
class Income implements Transaction {
private int amount;
private String description;
//private Category category;
@Override
public void transaction(Account account) {
//Die Einnahme wird der Incomes List hinzugefügt und die balance
// dementsprechend verringert
}
}
[/CODE]
Mein Problem ist jetzt, dass ich jeder Transaktion eine Kategorie hinzufügen möchte, also zb Lebensmittel, Miete, etc.
Die Transaktionen sollen nach dieser Kategorie gefiltert werden können. Leider habe ich keine Ahnung wie ich Kategorie umsetzen soll.
Enum fällt aus, da Kategorien hinzugefügt werden können. Außerdem sind mir die Klassen
Income
und Purchase
ein Dorn im Auge,da sie identische Attribute haben, wäre statt ein Interface eine Abstrakte Klasse evtl eher angebracht?
Danke schonmal!