Aufgaben 2 + 3 ausgeführt.
This commit is contained in:
parent
6de9f57019
commit
6239c3a002
|
@ -0,0 +1,28 @@
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
public class Bank {
|
||||||
|
|
||||||
|
ArrayList<Bankkonto> konten = new ArrayList<>();
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
ArrayList<Bankkonto> konten = new ArrayList<>();
|
||||||
|
konten.add(new Bankkonto("Jolly Jumper", 20000.0));
|
||||||
|
konten.get(0).einzahlen(20000);
|
||||||
|
konten.get(0).beziehen(10000);
|
||||||
|
|
||||||
|
konten.add(new Salaerkonto("Donald Duck", 5000.0, -1500.0));
|
||||||
|
konten.get(1).beziehen(100000);
|
||||||
|
konten.get(1).einzahlen(3000);
|
||||||
|
|
||||||
|
|
||||||
|
konten.add(new Nummernkonto("Unbekannt", 100000.0));
|
||||||
|
konten.get(2).beziehen(10);
|
||||||
|
konten.get(2).einzahlen(10000);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
for(Bankkonto konto : konten){
|
||||||
|
System.out.println(konto);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,66 @@
|
||||||
|
public class Bankkonto {
|
||||||
|
|
||||||
|
private String inhaber;
|
||||||
|
private double kontostand = 0;
|
||||||
|
private double maxKontostand = 100000;
|
||||||
|
protected double minKontostand = 0;
|
||||||
|
|
||||||
|
public Bankkonto(String inhaber){
|
||||||
|
setInhaber(inhaber);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Bankkonto(String inhaber, double eroeffnungsbestand){
|
||||||
|
setKontostand(eroeffnungsbestand);
|
||||||
|
setInhaber(inhaber);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInhaber() {
|
||||||
|
return inhaber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getKontostand() {
|
||||||
|
return kontostand;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean setInhaber(String inhaber) {
|
||||||
|
if(inhaber.length() > 2) {
|
||||||
|
this.inhaber = inhaber;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean setKontostand(double kontostand) {
|
||||||
|
if(kontostand > maxKontostand) {
|
||||||
|
this.kontostand = maxKontostand;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else if(kontostand < minKontostand){
|
||||||
|
this.kontostand = minKontostand;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
this.kontostand = kontostand;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean einzahlen(double betrag){
|
||||||
|
if(setKontostand(kontostand + betrag)){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean beziehen(double betrag){
|
||||||
|
if(setKontostand(kontostand - betrag)){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Inhaber: " + getInhaber() + ", Kontostand: " + kontostand;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
public class Nummernkonto extends Bankkonto{
|
||||||
|
|
||||||
|
private double ueberzugslimite;
|
||||||
|
private int nummer;
|
||||||
|
private static int naechsteNummer = 1000;
|
||||||
|
|
||||||
|
public Nummernkonto(String inhaber, double eroeffnungsbestand){
|
||||||
|
super(inhaber, eroeffnungsbestand);
|
||||||
|
setNummer();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Nummernkonto(String inhaber){
|
||||||
|
super(inhaber);
|
||||||
|
setNummer();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setNummer(){
|
||||||
|
nummer = naechsteNummer;
|
||||||
|
naechsteNummer ++;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getInhaber(){
|
||||||
|
return "" + nummer;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,34 @@
|
||||||
|
public class Salaerkonto extends Bankkonto{
|
||||||
|
|
||||||
|
private double absolutMinKontostand = -10000;
|
||||||
|
|
||||||
|
public Salaerkonto(String inhaber, double bezugslimite, double eroeffnungsbestand){
|
||||||
|
super(inhaber);
|
||||||
|
setMinKontostand(0 - bezugslimite);
|
||||||
|
super.setKontostand(eroeffnungsbestand);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Salaerkonto(String inhaber, double bezugslimite){
|
||||||
|
super(inhaber);
|
||||||
|
setMinKontostand(0 - bezugslimite);
|
||||||
|
}
|
||||||
|
|
||||||
|
public double getUeberzugslimite(){
|
||||||
|
return 0 - minKontostand;
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean setMinKontostand(double minKontostand){
|
||||||
|
if(minKontostand < absolutMinKontostand){
|
||||||
|
super.minKontostand = absolutMinKontostand;
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
super.minKontostand = minKontostand;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return super.toString() + ", Ueberzugslimite: " + getUeberzugslimite();
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue