Public feed
#377816
/*
* KontoTest.java E.L. 2004-02-10
*
* Filen inneholder to klasser:
* Konto: Beskriver en bankkonto med muligheter for innskudd og uttak
* KontoTest: Lager et konto-objekt og foretar transaksjoner.
*/
import static javax.swing.JOptionPane.*;
class Konto {
private long kontonr;
private String navn;
private double saldo;
private int kredittgrense;
public Konto(long startKontonr, String startNavn, double startSaldo, int startkredittgrense) {
kontonr = startKontonr;
navn = startNavn;
saldo = startSaldo;
kredittgrense = startkredittgrense;
}
public long finnKontonr() {
return kontonr;
}
public String finnNavn() {
return navn;
}
public double finnSaldo() {
return saldo;
}
public double finnKredittgrense() {
return kredittgrense;
}
public String innskudd(double beløp) {
String resultat;
saldo = saldo + beløp;
double disponibelt = saldo + kredittgrense;
resultat = "Innskuddet av kr: " + beløp + " gikk i orden, saldo: " + saldo + " og disponibelt: " + disponibelt;
return resultat;
}
public String uttak(double beløp) {
String resultat;
double disponibelt = saldo + kredittgrense;
if ((disponibelt - beløp) <= 0){
resultat = "Beklager, men din kredittgrense er nådd";
} else {
saldo = saldo - beløp;
resultat = "Uttaket på: " + beløp + " er nå gjennomført. Saldo: " + saldo;
}
return resultat;
}
public String settkredittgrense(int nykredittgrense) {
kredittgrense = nykredittgrense;
String resultat = "Din nye kredittgrense er: " + kredittgrense;
return resultat;
}
}
/*
* Et enkelt program som tester klassen Konto.
* Vi tester en klasse ved å opprette et (eller flere) objekt(er) av klassen.
* Deretter henter vi ut dataene fra objektet og skriver disse ut,
* slik at vi kan se at objektet virkelig inneholder de dataene
* vi putter inn. Så prøver vi ut metoder som endrer datainnholdet,
* og metoder som gjør beregninger.
*/
class oppgave6151 {
public static void main(String[] args) {
/* Trinn 1: Lager et objekt av klassen */
/* Kontonummeret er long, derfor L etter tallet */
long svadakontonummer = Long.parseLong(showInputDialog("Skriv inn kontonummeret"));
String svadanavn = showInputDialog("Skriv inn navnet på kontoinnehaver");
double svadasaldo = Double.parseDouble(showInputDialog("Skriv inn saldo til konto: " + svadakontonummer));
int svadakredittgrense = Integer.parseInt(showInputDialog("Skriv inn kredittgrense til konto: " + svadakontonummer));
Konto svadajallaKonto = new Konto(svadakontonummer, svadanavn, svadasaldo, svadakredittgrense);
int tingtodo = 0;
do {
String[] muligheter = {"Uttak","Innskudd","Forandre kredittgrense","Avslutt"};
int mc = QUESTION_MESSAGE;
tingtodo = showOptionDialog(null,"Hva vil du gjøre?","Minibank 0.1Alpha",0,mc,null,muligheter,muligheter[0]);
String beskjed = "";
switch (tingtodo){
case 0:
beskjed = svadajallaKonto.uttak(Double.parseDouble(showInputDialog("Skriv inn beløp du vil ta ut")));
break;
case 1:
beskjed = svadajallaKonto.innskudd(Double.parseDouble(showInputDialog("Skriv inn beløpet du vil sette inn")));
break;
case 2:
beskjed = svadajallaKonto.settkredittgrense(Integer.parseInt(showInputDialog("Skriv inn den nye kredittgrensen")));
break;
case 3:
beskjed = "Takk for at du benyttet deg av Minibank 0.1Alpha";
break;
}
showMessageDialog(null, beskjed);
} while (tingtodo != 3);
}
}