Föreläsning 3 Väsentliga delar i ett Javaprogram Input i paketet extra Variabler Parametrar Aritmetik Fel - errors
Ett program om ålder och civilstånd F2.java
Väsentliga delar i ett Javaprogram Importera paket som används i programmet. Här importeras endast paketet extra. En eller flera klasser vars namn börjar med stor bokstav. Här heter klasserna Welcome resp StartWelcome. Blockparenteser som markerar start och slut på klassen, { - start på klassen } - slut på klassen En metod med namnet main i vilken programkörningen startar.
Hur källkoden ska skrivas Startparentesen, {, ska stå på samma rad som (efter) eller rakt under klassnamn, metodhuvud, styrstruktur etc Efter startparentes (eller underförstådd startparentes) ska koden indenteras två steg. Indenteras = flyttas åt höger. Slutparentesen, }, ska stå rakt under klassnamn, metodnamn, styrstruktur el.dyl.
Hur källkoden ska skrivas Klassens namn ska alltid börja med stor bokstav Paketets namn ska alltid börja med liten bokstav Metodnamn ska alltid börja med liten bokstav Variabelnamn ska alltid börja med liten bokstav Ovanstående namn kallas för identifierare. En identifierare får bl.a. innehålla bokstäver, siffror och _. Identifierare ska vara beskrivande, t.ex. skatt och inte s.
Input och Output i paketet extra ExtraEx.java StartExtraEx.java
Variabler
Lokala variabler Variabler.java
Tilldelning
Parametrar Parametrar.java
Parametrar
Metod En metod består av en sekvens av kod som utförs då metoden anropas. En metod kan anropas flera gånger varvid koden som tillhör metoden utförs flera gånger. Än så länge deklareras de metoder vi skriver så här public void metod1() { // rader med kod } eller public void metod2(parameterlista) { // rader med kod } Anropet av metoden beror på hur metoden deklarerats, dvs om man ska skicka med några värden (parametrar) eller ej.
Metod utan parameterlista En metod utan parameterlista har ett tomt parentespar efter metodnamnet public class IngaParametrar { public void presentation() { System.out.println(”Programmet beräknar…”); System.out.println(”Mycket nöje!”); } } Vid anropet överförs ingen information till metoden. Metoden fungerar utan input från omvärlden och ger alltid samma körresultat. KOD KÖRRESULTAT IngaParametrar prog = new IngaParametrar(); Programmet beräknar… prog.presentation(); Mycket nöje! IngaParametrar prog = new IngaParametrar(); Programmet beräknar… prog.presentation(); Mycket nöje! prog.presentation(); Programmet beräknar… Mycket nöje!
Metod med parameterlista En metod med parameterlista har en lista med en eller flera parametrar i en lista efter metodnamnet. Metodens beteende beror på de värden användaren levererar vid anropet till metoden. public class Parameterar { public void addera(int tal1, int tal2) { int summa = tal1+tal2; System.out.println( tal1 + "+" + tal2 + "=" + summa); } } Vid anropet måste man skicka med två heltal eftersom parameterlistan innehåller två heltal: vid anropet prog.addera(10,3); så överförs värdet 10 till tal1 och värdet 3 till tal2. KOD KÖRRESULTAT Parametrar prog = new Parametrar(); 10+3=13 prog.addera(10,3); 3+10=13 prog.addera(3,10);
Aritmetik, räkneoperatorer
Addera och subtrahera
Addera och subtrahera - halvkod Deklarera variablerna tal1 och tal2 Inmatning av tal 1 Inmatning av tal 2 Utskrift av addition 1 Utskrift av addition 2 Utskrift av subtraktion 1 Utskrift av subtraktion 2 Inmatning 1 Inmatning 2 Utskrift addition 1 Utskrift addition 2 Utskrift subtraktion 1 Utskrift subtraktion 2 AddSub.java StartAddSub.java MulDiv.java StartMulDiv.java
Prioritet Uttryck inom parenteser Multiplikation, division och rest Addition och subtraktion Vid lika prioritet sker beräkningar från vänster till höger.
Vanliga räkneoperationer
Vanliga räkneoperationer
Körresultat Hur ser programmet ut? Sparande.java
Olika typer av fel - Error Fel.java Kompileringsfel Dessa fel uppstår redan när man försöker att kompilera programmet, dvs. Javakompilatorn skriver ut ett felmeddelande. Ett vanligt exempel är att man han stavat fel på något ställe i källkoden eller glömt ett semikolon. Exekveringsfel Dessa fel uppstår när man exekverar (kör) programmet, dvs man får ett felmeddelande från Javainterpretatorn. Ett vanligt exempel är att man försöker dividera ett tal med noll (någonting delat med noll ger ett odefinierat resultat) Logiska fel Dessa fel visar sig genom att programmet inte gör det man hade tänkt, dvs. programmet kör utan felmeddelanden men resultatet blir inte det avsedda. Den här typen av fel är de som är svårast att hitta.
Halvkod Deklarera två variabler, heltalet tal och heltalet paus Skriv "Tänk på ett tal.” Skriv "Fördubbla talet.” Skriv "Öka talet med 8.” Skriv "Dividera talet med 4.” Låt användaren mata in resultatet av ovanstående operationer. Lagra resultatet i variabeln tal. Ledtext: "Ange resultatet efter ovanstående räkneoperationer: ” Skriv "Du tänkte på :"+(tal-4));