Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

ProblemKodeForklaring
Gjøre om fra tekst (String) to (desimal)tall (double)Double.valueOf(text)Du kaller Double-klassen sin valueOf-metode, for å konvertere en tekst til en double.
Gjøre om fra (desimal)tall til tekstString.valueOf(num) eller "" + numDu kaller enten String.valueOf, eller legger num til "", som konverterer num i samme slengen
Sjekke om en String-variabel er ingentingif (text != null) { ... }En bruker != null for å sjekke om er variabel er ingenting
Sjekke om en String-variabel er tomif (text.length() == 0) { ... }text.length() gir deg antall bokstaver i en String, så her sjekker vi om antall bokstaver er 0

 

Steg 4: Innkapsling

I det siste steget skal du innkapsle programmet du har laget så langt. Dette gjøres blant annet med en kalkulator-klasse med lese- og endringsmetoder, i tillegg til synlighetsmodifikatorer.

Kalkulator-klasse
I applikasjoner er det vanlig å dele programmet opp i model, view og controller (MVC-arkitektur). I denne oppgaven vil vi dele det opp slik:

  • Model: Kalkulator-klasse som håndterer lesing og endring av tilstanden til kalkulatoren
  • Controller: KalkulatorController-klasse som tar i mot inputs fra viewet og får kalkulator-objektet til å endre tilstand tilsvarende, samt gir tilstanden til kalkulator-objektet til viewet, slik at det kan vises til brukeren av programmet.
  • View: kalkulatorApp.fxml som viser tilstanden til kalkulator-objektet slik vi vil, og som lar brukeren gi inputs.

Til nå har du laget view (kalkulatorApp.fxml) og controller (KalkulatorController). Modellen vil da være en egen klasse, Kalkulator, som skal ta for seg alt som har med tilstanden til selve kalkulatoren å gjøre, dette krever innkapslede metoder for lesing og endring av attributter innen kalkulator-klassen.

Synlighetsmodifikatorer
I denne delen skal du gi attributter og metoder synlighetsmodifikatorer, slik at ikke alle klasser kan endre tilstanden til hverandre, uten at det er hensikten.