Avatar billede slayerz2002 Nybegynder
05. april 2005 - 00:36 Der er 57 kommentarer

Bankkonto med tilhørende GUI

Hej allesammen!

Jeg går og vil meget gerne prøve at lave et eksempel på hvordan at en bankkonto kunne være sat enkelt op, og der skal så være en tilhørende GUImenu som så indeholder punkterne. Jeg har taget et fag omkring det, men da jeg er kommet ind på holdet godt og vel da de andre var halvvejs, betyder det for mit vedkommende at jeg er lidt bagud  og derfor ofte har problemer med at forstå det der sker. Det jeg så derfor håber er at der er en som der kan lave det her på en let og enkel måde som jeg kan forstå, altså ikke noget særligt indviklet. Jeg har så opstillet nogle krav og har også eksempler på hvad de andre har lært at lave for ligesom at give et eksempel på hvilket niveau det er jeg snakker om.

Her kommer lige mine krav:

•    Programmet skal kunne håndtere og oprette nye bankkonti
•    Programmet skal have en tilhørende GUI
•    Programmets GUI skal være enkelt
•    Programmet kan eventuelt indeholde en tal omregner (Valutakurs omregner)

Og så vil jeg personligt foretrække hvis der kan komme kommentarer ind rundt omkring som forklarer hvad det er som sker.

Yderligere info:
Jeg har uploadet mine krav, samt min model til hvordan at jeg forestillede mig at denne GUI kunne se ud. Den ligger her:
http://s37.yousendit.com/d.aspx?id=11WLPRRTU7QJY22CPS3CUS3RDC

Hvis dette emne vækker nogen interesse kan jeg desuden maile eksemplerne, og lign. Jeg er desuden helt frisk på selv at være med i denne proces hvis det er krævet, da jeg er sikker på at det blot vil gavne min forståelse.
Det er ikke noget der haster og kan derfor godt spredes ud over en lidt længere periode :)

200 Point til den som kan hjælpe mig med dette =)
Avatar billede slayerz2002 Nybegynder
05. april 2005 - 00:43 #1
Her er for resten de punkter jeg gerne vil have at den skal indeholde:
        1. Vis Konto
        2. Opret konti
        3. Slet Konto
        4. Indsæt penge på konto
        5. Hæv penge på konto
        6. Vis detaljer for konto
        7. Gem Oplysninger
        8. Afslut
Avatar billede xanadu Nybegynder
05. april 2005 - 00:49 #2
Hej,

er der ikke nogen tekniske krav - f. eks., hvilket programmeringssprog der skal bruges, hvilken form for database (eller filer) data skal gemmes i, operativsystem, samt deadline?
Avatar billede xanadu Nybegynder
05. april 2005 - 00:49 #3
Glem spørgsmålet om programmeringssproget, så først nu kategorieren - det er nok lidt sent på dagen ;) Java er jeg desværre ikke så god til at hjælpe dig med, beklager.
Avatar billede snoop_one Nybegynder
05. april 2005 - 01:33 #4
Skal det hele være baseret på et database system? - hvis ja, hvilket?
Hvad indeholder vis detaljer for konto?
Hvad skal gem oplysninger gøre?
Avatar billede slayerz2002 Nybegynder
05. april 2005 - 06:58 #5
Jo! Der er egentligt nogle krav som jeg gerne vil have opfyldt ;) Hmm... Jeg skal lige tænke over det, og så tilføjer jeg dem om et par timer.
Avatar billede slayerz2002 Nybegynder
05. april 2005 - 08:31 #6
Okay altså!
Det skal som sagt skrives i Java og skal være sådan at dataen gemmes i en fil efterfølgende. Dette kunne passende bare være en .txt fil.

Her er lige en lidt mere detaljeret opsætning af de punkter:
        1. Vis Konto - Viser kontiinformationer, altså de forskellige kontoers Kontonummer, saldo og kontonavn.
        2. Opret konti - Opretter ny konto, giver kontoen et kontonummer ( Hvis der for eksempel i forvejen er 3 kontoer i systemet, vil denne næste konto som bliver oprettet så for eksempel få kontonummer 0004)
        3. Slet Konto - Slet konto sletter så kontoen ;) Må gerne kræve en form for verifikation, for eksempel at man skal genindtaste koden og så acceptere.
        4. Indsæt penge på konto - Indsætter et givent beløb som så bliver lagt oven i den mængde der i forevejen er. Det skal ikke være muligt at indsætte negative beløber.
        5. Hæv penge på konto - Hæver et givent beløb fra en konto. Det skal ikke være muligt at hæve et negativt beløb fra kontoen.
        6. Rediger Kodeord - ændrer kodeord, kræver at man indtaster det gamle først.
        7. Rediger Oplysninger - Redigerer navn på ejer. eventuelt kunne det være fedt også at kunne ændre navnet på sine konti.
        8. Afslut - Logger af systemet

Jeg har så ændret punkt 6, da den ligesom gik igen som du også bemærkede Snoop One, og i stedet for en gem oplysninger som vel alligevel bliver gjort efter at man skifter punkt, har jeg tænkt at man så kunne lave en "Rediger Konti" som så var lidt mere aktuel ;)

Håber det har givet jer fornyet blod på tanden :)
Avatar billede snoop_one Nybegynder
05. april 2005 - 10:01 #7
Slayerz2002 det er vel dig der skal have blod på tanden og ikke os ;0), eftersom det er dit eksamensprojekt... Jeg vil foreslå, at du selv påbegynder opgaven og stiller de spørgesmål du har hen af vejen hvis der er noget du ikke helt er med på (du kan bare gøre det under dette post - behøver ikke at oprette nye).

Grunden til at jeg siger dette er, at der dermed, efter min vurdering, får mere ud af opgaven - du får ikke rigtigt noget ud af at vi/jeg laver den for dig. 

Du kan tage udgangspunk i en konto klasse, hvor du opretter en konto og kan udføre transaktioner på den, som f.eks. indsætte penge og hæve penge (helt simpelt uden gui eller noget persistense).
Avatar billede slayerz2002 Nybegynder
05. april 2005 - 11:09 #8
Heh okay ;) Jamen det må jeg prøve så :D
Jeg vil lige tage et ekstrakig på det jeg nu engagn har prøvet mig af med, og så vender jeg tilbage senere :)
Avatar billede slayerz2002 Nybegynder
11. april 2005 - 08:20 #9
Nu har jeg endelig fået installeret mit Netbeans derhjemme og har så prøvet at lave starten. Jeg er som sagt ikke særlig god til programmering, og har derfor ikke den store ide om hvor jeg så skal starte når jeg vil begynde på min main.

import cs1.Keyboard;
import java.util.Vector;
import Bankkonto.Eksempel.Account;
import java.io.*;




public class KontoEksempel {

    private Vector konti; 
    int Account;
   
    public KontoEksempel()
    {
    konti = new Vector();
    if(false == restoreAccounts())
        System.out.println("Fejl ved indlæsning");
    }
   
    private void printMenu() {
       
        System.out.println(
        "1. Vis Konti \n" +
        "2. Opret konti \n" +
        "3. Slet Konto \n" +
        "4. Indsæt penge på konto \n" +
        "5. Hæv penge på konto \n" +
        "6. Rediger kodeord \n" +
        "7. Rediger Oplysninger \n" +
        "8. Afslut");
     
       
        System.out.println("Indtast valg:");
   
    }
    private boolean saveAccount()
    {
        FileOutputStream outFile;
        ObjectOutputStream outStream;
        try{
            outFile = new FileOutputStream("h:\\accounts.dat");
            outStream = new ObjectOutputStream(outFile);
            outStream.writeObject(konti);
            outStream.close();
            outFile.close();
        }
        catch(FileNotFoundException e)
        {
        }
        catch(IOException e)
        {
        }
        return true;   
    }
    private boolean restoreAccounts()
    {
        FileInputStream inFile;
        ObjectInputStream inStream;
        try{
        inFile = new FileInputStream("h:\\accounts.dat");
        inStream = new ObjectInputStream(inFile);
        konti = (Vector)inStream.readObject();
        inStream.close();
        inFile.close();
        }
        catch(ClassNotFoundException e)
        {
            return false;
        }
        catch(FileNotFoundException e)
        {
            return false;
        }
        catch(IOException e)
        {
            return false;
        }
        return true;
    }
    public static void main(String[] args) {
Avatar billede slayerz2002 Nybegynder
11. april 2005 - 08:41 #10
Det ovenstående har jeg lavet sammen med en ven, og han har så sagt at jeg skulle importere en masse "private" data, som så skulle gøres i en fil for sig selv. Han har så passende kaldt den Account, da den indeholder al den private data såsom pinkode, saldo osv.

Jeg har så et eksempel på hvordan sådan en ser ud liggende, der så giver mig en ide om hvordan at det fungerer,
Avatar billede snoop_one Nybegynder
11. april 2005 - 12:08 #11
Du kan f.eks. gøre følgende i din main metode:

public static void main(String... args) {
  new KontoEksempel().printMenu();
  Scanner sc = new Scanner(System.in);
  int i = sc.nextInt();
  //check at det valgte tal er gyldigt og udføre valget...
  System.out.println("Du valgte nummer "+i);
}
Avatar billede slayerz2002 Nybegynder
11. april 2005 - 17:11 #12
Ja det var en god idé! Havde slet ikke tænkt over hvad der nu skulle ske hvis en bruger for eksempel fik den ide at trykker '0' eller '9'.
Når jeg så skal have disse punkter til at udføre en reel funktion og ikke blot være et stykke tekst, skal jeg så gøre det i en ny Java klasse, eller bør jeg holde det hele samlet i én?

For resten sidder jeg med det problem at jeg hjemme hos mig ikke har min cs1.Keyboard, som jeg har der hvor jeg nu bliver undervist.. Følger den med i programmet, men ligger bare et andet sted? Eller hvor skal jeg hente den?
Avatar billede arne_v Ekspert
11. april 2005 - 17:16 #13
cs1.Keyboard er en utility klasse som kommer sammen meden eller flere bøgers eksempler.

Den er helt overflødig fra og med Java 1.5 hvor du kan bruge den Scanner klasse som
snoop bruger.
Avatar billede arne_v Ekspert
11. april 2005 - 17:49 #14
Lidt afhængig af niveauet for opgaven kan du overveje:

1) adskillelse af bruger interface (menu) og reel funktionalitet (save/load)
  i seperate klasser

2) om det var bedre at gemme i database eller XML filer fremfor i serialiserede
  objekter
Avatar billede slayerz2002 Nybegynder
12. april 2005 - 01:03 #15
Opgavens niveau skal ikke ligge særlig højt :) Det er på begynderniveau, som det sikkert også kan fornemmes ;) Det er også derfor jeg har søgt hjælp her, da jeg på det niveau kun har få timer om ugen hvor jeg har mulighed for at have direkte kontakt med min lærer der så kan hjælpe mig i sving, når jeg endnu engang sidder og går i stå på grund af manglende viden. Dette skyldes som sagt at jeg er startet et halvt år inde i faget og derfor er der mange ting som jeg kun har fået halvdelen af med eller kun hørt lidt om. Så egentlig er det kun min GUI, som jeg har en nogenlunde styr på, altså ikke særlig meget programmering når man tæller det op.
Avatar billede snoop_one Nybegynder
12. april 2005 - 08:51 #16
Jeg ville nok lave følgende opdeling:

Model komponent (der i ligger konto klassen)
Controller komponent (der i ligger konto controller klassen der har til ansvar at udføre ændringer på konto'en samt sørge for persistens - dvs. gemme ud i fil eller database eller hvad du nu helst vil)
Gui komponent (indeholder de klasser der har ansvaret for det grafiske)

På denne måde får du en naturlig opdeling af dine klasser iht. deres ansvarsområder idet du placere alle dem med samme ansvarsområde i samme pakker (packages).
Avatar billede slayerz2002 Nybegynder
12. april 2005 - 09:56 #17
Okay! Jeg vil lige prøve at se om jeg kan finde ud af at starte på de forskellige komponenter og så vender jeg tilbage senere..
Avatar billede slayerz2002 Nybegynder
12. april 2005 - 20:58 #18
Okay hmm, jeg kan kun finde lidt ud af det med at starte på controller komponent klassen, så det har jeg prøvet på... Så ved jeg ikke rigtig med resten, der tror jeg nok bare at jeg kommer halvt til at kigge på fra sidelinjen. Men i hvert fald har jeg prøvet mig ad med det med den controller komponent klasse, for at se hvordan at det kommer til at se ud. Jeg er så endt ud med bare at definere de forskellige ting, da det var det jeg sådan lige umiddelbart havde en ide om hvordan skulle gøres. En ven har så efterfølgende set på det for at se om jeg har lavet helt gal i den, men han tror også at det er nogenlunde rigtigt.

package Bankkonto.Projekt;

import java.util.Date;
import java.text.DecimalFormat;

/** Controller Komponent klassen der indeholder alle informationer om
*  vores konti
*/

public class Controllerkomponent
{
  private int pinkode, kontonummer;
  private double saldo;
  private String kontoindehaver;
  private Date oprettelsesdato;
  private DecimalFormat justering;

  public Controllerkomponent()
  {
      pinkode = 0;
      kontonummer = 0;
      saldo = 0.0;
      kontoindehaver = "Ingen";
      oprettelsesdato = new Date();
      justering = new DecimalFormat("###,###");
  }

  public void insertMoney(double penge)
  {
      saldo += penge;
  }

  public double queryBalance()
  {
      return saldo;
  }

  public void setName(String navn)
  {
      kontoindehaver = navn;
  }

  public String queryName()
  {
      return kontoindehaver;
  }

  public void setAccountNumber(int number)
  {
      kontonummer = number;
  }

  public int queryAccountNumber()
  {
      return kontonummer;
  }

  public void setPIN(int pin)
  {
      pinkode = pin;
  }

  private int queryPIN()
  {
      return pinkode;
  }

  public String toString()
  {
      return "Kontonummer: " + kontonummer + "\n" +
            "Kontoindehaver: " + kontoindehaver + "\n" +
            "Saldo: " + justering.format(saldo) + " kr.\n" +
            "Oprettelsesdato: " + oprettelsesdato.toString();
  }
}

Er jeg helt gal på den?
Avatar billede slayerz2002 Nybegynder
13. april 2005 - 21:28 #19
Hmm, sidder lige og kigger lidt på det. Når jeg så har lavet det ovenstående, så gælder det vel egentlig kun for en enkelt konto? Hvis jeg så skal have det til så det foregår for hver konto, så skal det vel ændres lidt...?
Avatar billede arne_v Ekspert
13. april 2005 - 21:30 #20
Du skal jo nok have både en Bank klasse og en Konto klasse, hvor Bkank klassen
indeholder en Collection af Konto instanser.
Avatar billede slayerz2002 Nybegynder
13. april 2005 - 23:22 #21
Okay, hmm... Kan du vise mig hvordan at det skal se ud? Jeg ved ikke hvordan at jeg skal lave det..
Avatar billede snoop_one Nybegynder
14. april 2005 - 00:11 #22
Jeg er fuldstændig enig med Arne_v...
Du skal have en konto klasse som indeholder de elementer du har i din nuværende
Controllerkomponent også skal du have en bank klasse som så er din kontroller.
Avatar billede snoop_one Nybegynder
14. april 2005 - 00:43 #23
Her er et lille eksempel på en konto klasse, der lægger sig tæt op af din egen kode... dog har jeg lavet nogle modifikationer...

package model;

import java.text.DecimalFormat;
import java.util.Date;

/**
* Konto klassen har ansvar for den enkelte konto i systemet.
*/
public class Konto {

    private int pinkode;

    private int kontonummer;

    private double saldo;

    private String kontoindehaver;

    private Date oprettelsesdato;

    private DecimalFormat justering;
   
       
    public Konto(int pinkode, int kontonummer, double saldo,
            String kontoindehaver) {
        this.pinkode = pinkode;
        this.kontonummer = kontonummer;
        this.saldo = saldo;
        this.kontoindehaver = kontoindehaver;
        oprettelsesdato = new Date();
        justering = new DecimalFormat("###,###");
    }

    public void insertMoney(double penge) {
        saldo += penge;
    }

    public double queryBalance() {
        return saldo;
    }

    public void setName(String navn) {
        kontoindehaver = navn;
    }

    public String queryName() {
        return kontoindehaver;
    }   
   
    public int queryAccountNumber() {
        return kontonummer;
    }

    public void setPIN(int pin) {
        pinkode = pin;
    }

    private int queryPIN() {
        return pinkode;
    }

    public String toString() {
        return "Kontonummer: " + kontonummer + "\n" + "Kontoindehaver: "
                + kontoindehaver + "\n" + "Saldo: " + justering.format(saldo)
                + " kr.\n" + "Oprettelsesdato: " + oprettelsesdato.toString();
    }
   
    public boolean equals(Object o){
        if(!(o instanceof Konto)){
            throw new IllegalArgumentException("Sammenligning foretages kun med objekter af typen Konto");
        }
        Konto test = (Konto) o;
        return (test.queryAccountNumber() == kontonummer) && (test.queryName().equals(kontoindehaver));
    }
   
    public int hashCode(){
        return kontonummer + kontoindehaver.hashCode();
    }
}
Avatar billede snoop_one Nybegynder
14. april 2005 - 00:43 #24
Og en kontroller klasse:

package controller;

import java.util.Collection;
import java.util.HashSet;
import java.util.Random;

import model.Konto;

/**
* Bank klassen har ansvar for alle kontier i systemet for denne bank.
*/
public class Bank {
   
    private String navn;
    private HashSet<Konto> kontoSamling;
    private int kontoNummer;
    private static Random pinkodeGenerator = new Random();
    public Bank(String navn){
        this.navn = navn;
        kontoSamling = new HashSet<Konto>();
        kontoNummer = 0;
    }
   
    public Konto createNewAccount(int saldo, String kontonavn){
        Konto nyKonto = new Konto(pinkodeGenerator.nextInt(),kontoNummer, saldo,kontonavn);
        kontoNummer++;
        kontoSamling.add(nyKonto);
        return nyKonto;
    }
   
    public Collection<Konto> findKontoFraNavn(String kontonavn){
        //implementere denne metode selv
    }
    public Collection<Konto> findKontoFraNummer(int kontoNummer){
        //implementere denne metode selv
    }
    //implementere de resterende metoder har brug for....
}
Avatar billede snoop_one Nybegynder
14. april 2005 - 00:46 #25
Som du selv kan se er det sent... så hvis noget af det ikke giver mening, så er det måske rigtigt... ZZZZzzzzzZZZzzzz :)
Avatar billede slayerz2002 Nybegynder
14. april 2005 - 09:30 #26
De metoder som du skriver skal implementeres, havde du regnet med at det skulle være en form for søgemetode? Eller hvad sidder jeg og misforstår? :)
Avatar billede snoop_one Nybegynder
14. april 2005 - 12:48 #27
netop...
Avatar billede slayerz2002 Nybegynder
25. april 2005 - 23:44 #28
Jeg har efter noget bøvl kigget lidt på koden med en ven, der så siger at jeg nok skal lave de metoder ved hjælp af ngoet gejl med en iterator eller noget, da det er lavet i et hashset... Jeg nåede dog ikke så langt og er helt på bar bund med resten. Dog er jeg nået lidt på min GUI, som jeg som sagt regner med at kunne klare forholdsvis selv, men resten kræver dog noget mere hjælp :)

Her er den metode vi kiggede lidt på. Tror bare jeg dropper den anden da jeg ikek ved hvordan at jeg skal gøre det.


Er det helt hen i vejret?
public Collection<Konto> findKontoFraNavn(String kontonavn){
       
        boolean contains;
        iterator it;
        it = kontoSamling.iterator();
       
        while ( it.hasNext())
        {
            Konto k = (Konto)it.next();
            boolean contains(Object o);
        }
     
    }
Avatar billede arne_v Ekspert
25. april 2005 - 23:59 #29
while ( it.hasNext())
        {
            Konto k = (Konto)it.next();
            boolean contains(Object o); // <---- tror jeg ikke compiler
        }
Avatar billede arne_v Ekspert
25. april 2005 - 23:59 #30
Og hvad skal metoden gøre ?
Avatar billede slayerz2002 Nybegynder
26. april 2005 - 14:33 #31
uhh altså så vidt jeg forstår det gemmer den alle konti i "HashSets" i "kontosamlingen". Hvis jeg så vil kunne finde en af disse konti, skal jeg have en metode til at gøre det med. Den metode skal så på en eller anden måde kunne finde kontonavnet, som så er gemt som et hashset.
Regner med at metoden skal bruges til når man for eksempel skal ind under punktet "Vis Konti". Så kan den så finde kontoens data, ved at se på hvem der er logget ind, og så finde den data som hører til det navn.
Avatar billede slayerz2002 Nybegynder
26. april 2005 - 14:34 #32
Så det er vel hvad den skal gøre.
Avatar billede snoop_one Nybegynder
26. april 2005 - 17:12 #33
ja det du har brug for, er at finde de konto'er med det givne navn fra hashsettet. Hashsettet er bare en databag til at opretholde samling af konto'er for banken.
Så du skal søge hashsettet igennem og hente hvert konto objekt ud og checke på dets navn for at se om en given match er tilstede. For eksempel:

public Collection<Konto> findKontoFraNavn(String kontonavn){
    List<Konto> found = new ArrayList<Konto>();
    for(Konto k : kontoSamling){
          if(k.queryName().equals(kontonavn)){
          found.add(k);
          }
        }
    return found;
}

Men du skal huske på, at et navn ikke entydigt bestemmer konto'en... det gør kontomummeret. Så du kan godt få flere konto'er når der søges på f.eks. "Jens Jensen";
Avatar billede slayerz2002 Nybegynder
27. april 2005 - 03:43 #34
Ja okay nu forstod jeg det helt :)

Så skal "vi" vel efter hånden igang med punkterne nu da det meste af det bagved er lavet, hvis man kan sige sådan.
Avatar billede snoop_one Nybegynder
27. april 2005 - 08:40 #35
Ja det er jo dig der styre hvordan du vil arbejde... vi andre hjælper dig med forståelses-spørgsmål iht. java og software design. ;0)
Avatar billede slayerz2002 Nybegynder
28. april 2005 - 00:15 #36
Da jeg ikke har lavet min GUIklasse færdig endnu, ville det være tåbeligt at smide en del af det ud på nettet. Derimod så har jeg fået rettet det jeg nu kunne i den enkeltvise kontoklasse, kontrolklassen og "konto", men jeg er dog i mine syv sind om de hænger helt sammen så at sige, og desuden,har jeg nogle steder røde streger som jeg selv er ude af stand til at fjerne, men hvis jeg nu uploader dem og smider et link, så ville det være dejligt om du/i lige gad at tjekke det igennem og sigef hvor fejlene ligger, eller måske uploade det efter at det er blevet rettet. Link kommer lige om lidt.
Avatar billede slayerz2002 Nybegynder
28. april 2005 - 00:20 #37
Her er linket. ZIP-filen indeholder så de tre JAVA klasser, Konto, KontoEnkeltvis og KontrolKlasse. Om deres navn bør ændres ligeså er op til dig/jer, da jeg altid kan ændre det bagefter for bedst at kunne overskue det senere hen :)

http://s36.yousendit.com/d.aspx?id=0ITXED20XVNXF2RSTMWV1O7TVK
Avatar billede snoop_one Nybegynder
28. april 2005 - 00:57 #38
hvad er dit konkrete problem?
I de fleste tilfælde har du ikke importeret de forskellige klasser du benytter! Det kan du få eclipse til ved (ctrl + shift + O) eller højre klik på filen og vælg source og vælg organize imports.
Hvad har konto klassen som ansvar og hvad har kontrolklassen som ansvar?

Desuden kan du i eclipse holde musen over den røde linie og der vil komme en fejlbesked der oftest hjælper dig på rette vej...
F.eks. ved linie
  new Konto(pinkodeGenerator.nextInt(),kontoNummer, saldo,kontonavn);
i KontrolKlasse får jeg følgende besked:
  The constructor Konto(int, int, int, String) is undefined
Avatar billede slayerz2002 Nybegynder
28. april 2005 - 17:07 #39
Heh, jeg sidder og bruger NetBeans 4.0, er det et program du kender til? I så fald, ved du om det er muligt at gøre det deri ligeså?

Jeg har ofte svært ved at fortolke de beskeder som den skriver mig de steder hvor jeg laver fejl. For eksempel ville jeg ikke vide hvordan at jeg skal definere min constructor i det tilfælde du viser, eller hvorfor den skriver 3 gange integer og én gang string i parentés.
Avatar billede snoop_one Nybegynder
29. april 2005 - 00:18 #40
Aha ok...
Det betyder, at den kostruktor du kalder:
new Konto(pinkodeGenerator.nextInt(),kontoNummer, saldo,kontonavn);
ikke  er definieret i konto klassen til, at have fire argumenter af typerne (int, int, int, String) idet din pinkode, kontonummer, saldo er int typer og kontonavn er af typen String.
Så den siger bare, at du ikke kan oprette et objekt af typen Konto med de angivne typer som parameter idet konstruktoren er udefineret.
Avatar billede snoop_one Nybegynder
29. april 2005 - 00:20 #41
Desværrer har jeg aldrig arbejdet med NetBeans.
Avatar billede slayerz2002 Nybegynder
29. april 2005 - 18:04 #42
Ah okay... Kan du fortælle mig hvilke kilder jeg mangler at importere?
Avatar billede snoop_one Nybegynder
29. april 2005 - 19:23 #43
Nej, men det kan java compileren nok ;-)
Når du kompilere så får du vel nogle fejlmeddelelser hvori det fremgår hvad der mangler.
Avatar billede slayerz2002 Nybegynder
29. april 2005 - 21:01 #44
Okay her kommer lige den samlede fejl liste når jeg har compilet:

KontrolKlasse.java
C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\KontrolKlasse.java:27: cannot find symbol
symbol  : constructor Konto(int,int,int,java.lang.String)
location: class Projekt.Konto
        Konto nyKonto = new Konto(pinkodeGenerator.nextInt(),kontoNummer, saldo,kontonavn);
C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\KontrolKlasse.java:34: cannot find symbol
symbol  : class List
location: class controller.KontrolKlasse
    List<Konto> found = new ArrayList<Konto>();
C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\KontrolKlasse.java:34: cannot find symbol
symbol  : class ArrayList
location: class controller.KontrolKlasse
    List<Konto> found = new ArrayList<Konto>();
C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\KontrolKlasse.java:36: cannot find symbol
symbol  : method queryName()
location: class Projekt.Konto
          if(k.queryName().equals(kontonavn)){
C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\Konto.java:84: cannot find symbol
symbol  : class Scanner
location: class Projekt.Konto
  Scanner sc = new Scanner(System.in);
C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\Konto.java:84: cannot find symbol
symbol  : class Scanner
location: class Projekt.Konto
  Scanner sc = new Scanner(System.in);
6 errors
BUILD FAILED (total time: 2 seconds)

Konto.java
C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\Konto.java:84: cannot find symbol
symbol  : class Scanner
location: class Projekt.Konto
  Scanner sc = new Scanner(System.in);
C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\Konto.java:84: cannot find symbol
symbol  : class Scanner
location: class Projekt.Konto
  Scanner sc = new Scanner(System.in);
2 errors
BUILD FAILED (total time: 0 seconds)
Avatar billede snoop_one Nybegynder
29. april 2005 - 21:46 #45
C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\KontrolKlasse.java:27: cannot find symbol
symbol  : constructor Konto(int,int,int,java.lang.String)
location: class Projekt.Konto
        Konto nyKonto = new Konto(pinkodeGenerator.nextInt(),kontoNummer, saldo,kontonavn);

- ifl. java kan du ikke oprettet et konto objekt med (int,int,int, String) som parametertyper. Er du sikker på at den eksister?

C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\KontrolKlasse.java:34: cannot find symbol
symbol  : class List
location: class controller.KontrolKlasse
    List<Konto> found = new ArrayList<Konto>();
- Kan ikke finde List klassen. Er den importeret?

C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\KontrolKlasse.java:34: cannot find symbol
symbol  : class ArrayList
location: class controller.KontrolKlasse
    List<Konto> found = new ArrayList<Konto>();
- Den giver vel sig selv ifl. ovenstående....

C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\KontrolKlasse.java:36: cannot find symbol
symbol  : method queryName()
location: class Projekt.Konto
          if(k.queryName().equals(kontonavn)){
- Kan ikke finde metoden queryName() i konto klassen.

C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\Konto.java:84: cannot find symbol
symbol  : class Scanner
location: class Projekt.Konto
  Scanner sc = new Scanner(System.in);
- Er den importeret?
Avatar billede slayerz2002 Nybegynder
29. april 2005 - 23:48 #46
Hvordan fidner jeg ud af hvad de klasser jeg skal importere hedder?
Avatar billede snoop_one Nybegynder
30. april 2005 - 01:37 #47
Det fremgår af fejlbeskeden...
C:\Documents and Settings\Administrator\Dokumenter\Bankkonto\Projekt\KontrolKlasse.java:34: cannot find symbol
symbol  : class List  <------!!!!! Fremgår her !!!!!!!
location: class controller.KontrolKlasse
    List<Konto> found = new ArrayList<Konto>();
Avatar billede slayerz2002 Nybegynder
30. april 2005 - 14:51 #48
Ja men hedder den så lava.list eller hvad hedder den? =) Det var nu det jeg søgte :D
Avatar billede arne_v Ekspert
30. april 2005 - 15:18 #49
List og ArrayList skal nok have en:

import java.util.*;
Avatar billede snoop_one Nybegynder
30. april 2005 - 15:54 #50
jep, men generelt kan du slå dine klasse op her:
http://java.sun.com/j2se/1.5.0/docs/api/

Så kan du evt. vælge index øverst i midten og slå dine klasser op iht. navn. Der får også deres dokumentationer samt de pakker de tilhører.
F.eks. for List klassen vil du se, at den befinder sig i java.util.
http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html
Avatar billede slayerz2002 Nybegynder
30. april 2005 - 16:21 #51
Åh okay ;) mange tak
Avatar billede slayerz2002 Nybegynder
04. maj 2005 - 18:15 #52
Nu skal jeg vel have lavet sådan at den gør noget hvis jeg for eksempel vælger 4. Indsæt penge på konto... hvordan gør jeg det?
Avatar billede slayerz2002 Nybegynder
12. maj 2005 - 06:50 #53
Hallo ;)
Avatar billede snoop_one Nybegynder
20. maj 2005 - 12:20 #54
Det gør du ved:

Checke for valg 4.
Læs indtastet beløb.
Indsæt beløb i konto.
Avatar billede slayerz2002 Nybegynder
22. maj 2005 - 20:51 #55
Heh, det er ligemeget nu, fik det lavet færdig sammen med en ven, men du skal have tak for din store hjælp hele vejen igennem snoop one.

Hvis du vil være så venlig at udforme et svar til mig, så synes jeg at du bør have pointene :)
Avatar billede snoop_one Nybegynder
23. maj 2005 - 20:45 #56
Det var da så lidt ;0)
Avatar billede snoop_one Nybegynder
03. juni 2005 - 16:40 #57
lukke tid?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester