1 / 12

INTRODUKTION TILL PROGRAMMERING

INTRODUKTION TILL PROGRAMMERING. Föreläsning 7 (16.1.2006) INNEHÅLL: Metoder Lokala variabler Mera om klasser: -Nyckelorden public och private -Instansmetoder. Metoder.

agalia
Download Presentation

INTRODUKTION TILL PROGRAMMERING

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. INTRODUKTION TILL PROGRAMMERING Föreläsning 7 (16.1.2006) INNEHÅLL: Metoder Lokala variabler Mera om klasser: -Nyckelorden public och private -Instansmetoder Jonny Karlsson 16.1.2006

  2. Metoder • Brukar i icke objektorienterade programmeringsspråk kallas för ”underprogram”, ”funktioner” (bl.a. i C), eller ”procedurer”. • En metod kan beskrivas som ett ”program i programmet” som utför diverse satser innanför ett block (sammansatt sats). • Metoder används i huvudsak för att man i en programkod inte skall behöva upprepa liknande operationer flere gånger. •  Förkortar koden. • Programmet blir mer lättläst Satserna i en metod ”körs” genom att anropa metoden En metod kan anropas flere gånger i ett program Jonny Karlsson 16.1.2006

  3. Metoder En metod lämnar eventullet i från sej utdata och då talar man om att en metod returnerar ett värde. En metod kan även ta emot viss indata. Detta indata ges som argument eller parameter/parametrar till ett metodanrop. Varje metod som används i ett program har ett unikt namn. I Java finns en mängd fördefinierade metoder (t.ex. println(), readLine()) Ett oänligt antal metoder kan även skapas av programmeraren själv Jonny Karlsson 16.1.2006

  4. Att skapa metoder En metod skapas/deklareras enligt följande: returtyp metodNamn(arg1, arg2, arg3, ..., argN) { satser ... } Returtypen är antingen en datatyp (t.ex. int, float, String.....) eller voidvilket betyder att inget värde returneras. Argumenten är likaså datatyper och antalet kan bli oändligt många. Om metoden inte skall ta emot något argument sätter man void i argumentfältet eller lämnar det tomt. Metodnamnet börjar vanligen med liten bokstav och ifall metoden består av flera ord skrivs varje nytt ord med stor bokstav. (smaksak, ingen nödvändighet) Jonny Karlsson 16.1.2006

  5. Returnering av värden Nyckelordet returnanvänds för att returnera ett värde från en metod. Exempel: int dubbla(int heltal) { return heltal*2; } Metoden ovan, kallad ”dubbla”, tar emot ett heltal som argument och returnerar ett heltal som är det dubbla värdet av argumentet. Jonny Karlsson 16.1.2006

  6. Metodanrop En skapad metod kan anropas från en annan del av programmet. En metod anropas enligt följande: metodnamn(argument1, argument2, ....); Om metoden har argument skall man också ge argument till metodanropet (i annat fall lämnas argumentfältet tomt). Om metoden returnerar ett värde resulterar metodanropet i ett värde, eller m.a.o. metodanropet får det värde metoden returnerar. Jonny Karlsson 16.1.2006

  7. Metoder: sammanfattande exempel public metodExempel { static int max(int tal1, int tal2) { if(tal1 > tal2) return tal1; else return tal2; } public static void main(String args[]) { int returvarde, heltal1 = 2, heltal2 = 3; returvarde = max(heltal1, heltal2); System.out.println(returvarde); //skriver ut värdet 3 på skärmen //eller System.out.println(max(heltal1, heltal2)); //skriver ut värdet 3 på skärmen } } Jonny Karlsson 16.1.2006

  8. Lokala variabler Varabler deklarerade i metoder kallas lokala variabler. Lokala variabler är ej bekanta (åtkomliga/synlaga) från andra metoder. Observera således att heltalsvariablerna: returvarde, heltal1 och heltal2 är obekanta i metetoden dubbla i exemplet på föregående sida. Jonny Karlsson 16.1.2006

  9. Mera om klasser: nyckelorden public och private En klass kan vara deklarerad som public(offentlig). Detta betyder att klassen kan användas från en annan klass. Även instansvariabler kan vara deklarerade som public. Sådana instansvariabler kan tilldelas värden och avläsas från andra klasser. Instansvariabler blir vid deklaration automatiskt public. Exempel: public class bil { public int arsModell; public String farg; } Jonny Karlsson 16.1.2006

  10. Mera om klasser: nyckelorden public och private Instansvariabler kan även vara deklarerade som private. Sådana instansvariabler kan INTE tilldelas värden eller avläsas från andra klasser. Exempel: public class bil { private int arsModell; private String farg; } Användning av privata instanvariabler i Java är vanligt eftersom man ofta vill undvika att insansvariabler skall kunna manipuleras utanför klassen. Private instansvariabler brukar även kallas för inkaplslade instansvariabler. Jonny Karlsson 16.1.2006

  11. Klasser och instansmetoder Som redan tidigare nämnts i Föreläsning 6, kan klasser innehålla förutom instansvariabler även instansmetoder. En instansmetod är helt enkelt en metod som deklarerats inne i en klass. Instansmetoder används bl.a. för att göra det möjligt att kunna läsa värden från och tilldela värden till privata instansvaribler från andra klasser. Se exempel på följande sida: Jonny Karlsson 16.1.2006

  12. Klasser och instansmetoder class bil { private int arsmodell = 1999; public int getArsmodell() { return arsmodell; } } public huvuklass { public static void main(String args[]) { bil b = new bil(); System.out.println(b.arsmodell); //detta går ej System.out.println(b.getArsmodell); //skriver ut 1999 på bildskärmen } } Jonny Karlsson 16.1.2006

More Related