Presentation laddar. Vänta.

Presentation laddar. Vänta.

Jonny Karlsson 8.1.2007 1 INTRODUKTION TILL PROGRAMMERING Föreläsning 7 (8.1.2007) INNEHÅLL: -Klasser och instansvariabler -Tabeller av klassobjekt.

Liknande presentationer


En presentation över ämnet: "Jonny Karlsson 8.1.2007 1 INTRODUKTION TILL PROGRAMMERING Föreläsning 7 (8.1.2007) INNEHÅLL: -Klasser och instansvariabler -Tabeller av klassobjekt."— Presentationens avskrift:

1 Jonny Karlsson 8.1.2007 1 INTRODUKTION TILL PROGRAMMERING Föreläsning 7 (8.1.2007) INNEHÅLL: -Klasser och instansvariabler -Tabeller av klassobjekt

2 2Jonny Karlsson 8.1.2007 Klasser och instansvaribaler Alla värden som hanteras i Java är antingen primitiva typer eller referenstyper. Referenstyper kallas vanligen objekt Ett objekt kan antingen vara en array eller tillhöra någon i ett program (eller bibliotek) definierad datatyp. Dessa definierade typer kallas för klasser. Ett objekt som hör till en viss klass kallas för en instans eller ett objekt av klassen. Vi kommer i den här kursen att kalla dessa för objekt.

3 3Jonny Karlsson 8.1.2007 Klasser och instansvaribaler Exempel: String s; En ny variabel s deklareras ovan som är av typen String. String är en klass som definierar strängar och s blir nu ett nytt objekt av klassen String. String är ett exempel på en klass som finns färdigt definierad i Java.

4 4Jonny Karlsson 8.1.2007 Klasser och instansvaribaler ATT SKAPA EGNA KLASSER Klasser kan även vid behov deklareras av programmeraren själv. En ny klass kan deklareras i en skild källkodsfil eller i samma källkodsfil som innehåller huvudklassen med tillhörande huvudfunktion (”main”-funktion). Tillsvidare behandlar vi hur man deklarerar klasser i samma källkodsfil.

5 5Jonny Karlsson 8.1.2007 Klasser och instansvaribaler ATT SKAPA EGNA KLASSER En egen klass i samma källkodsfil som huvudklassen deklareras enligt följande: public class mittJavaProg { public static void main(String args[ ]) {}} class Minklass {} Observera att huvudklassen och endast huvudklassen skall vara ”public”. Huvudklassens namn bör vara samma som källkodsfilens namn.

6 6Jonny Karlsson 8.1.2007 Klasser och instansvaribaler Vår tidigare deklarerade klass ”Minklass” var för enkelhetens skull en tom klass som varken gör någonting eller innehåller variabler. En klass kan innehålla bl.a. instansvariabler och instansmetoder Tillsvidare går vi endast igenom instansvariabler.

7 7Jonny Karlsson 8.1.2007 Klasser och instansvaribaler Exempel: Vi behöver ett program som hanterar olika egenskaper av en person. Dessa egenskaper kan för enkelhetens skull nu vara endast födelseår och namn. Då skulle vi deklarera en ny klass för människa med två instansvariabler födelseår (int) och namn (String): class Person//definierar en ny klass som heter Person { int fodelsear; String Namn; }

8 8Jonny Karlsson 8.1.2007 Klasser och instansvaribaler Om vi nu från huvudklassens huvudmetod vill skapa ett nytt objekt av klassen Person gör vi enligt följande: public class mittJavaProg { public static void main(String args[ ]) { Person p;//Deklarerar en variabel p av typen //Person p = new Person();//skapar ett objekt av klassen Person. //Adressen/referensen till klassen tilldelas //variabeln p. }}

9 9Jonny Karlsson 8.1.2007 Klasser och instansvaribaler Efter detta kan den egna klassens instansvariabler kommas åt m.h.a. punktnotation: p.fodelsear = 1977; p.namn = ”Karl Karlsson”; Punktteknet som används här kallas i Java för syftningsoperator Nyttan med att använda klasser i det här fallet är ju att man kan binda flera egenskaper till en viss person även om programmet behandlar flera personer. Man kan ju skapa hur många objekt som helst av klassen Person och varje objekt innehåller egenskaperna namn och fodelsear.

10 10Jonny Karlsson 8.1.2007 Tabeller av klassobjekt Man kan även skapa tabeller av klassobjekt. Följande skapar en tabell av 10 Person- variabler: Person ptab[] = new Person[10]; //skapar en taball av 10 Person-variabler Sedan måste man skapa ett nytt objekt av klassen Person för varje Person-variabel i Person-tabellen: ptab[0] = new Person();//ptab[0] blir ett nytt objekt av klassen Person ptab[1] = new Person();//ptab[1] blir ett nytt objekt av klassen Person Sedan kommer man åt de olika objekten i klassobjektstabellen m.h.a. index värden (på samma sätt som i vanliga tabeller) ptab[0].namn = ”pelle”;//instansvariabeln namn i Person-tabellens //första position får värdet pelle ptab[0].fodelsear = 1999;//instansvariabeln fodelsear i Person-tabellens //första position får värdet 1999 ptab[1].namn = ”ville”;//.....andra posotion...... ville ptab[1].fodelsear = 1988;//.....andra posotion...... 1988


Ladda ner ppt "Jonny Karlsson 8.1.2007 1 INTRODUKTION TILL PROGRAMMERING Föreläsning 7 (8.1.2007) INNEHÅLL: -Klasser och instansvariabler -Tabeller av klassobjekt."

Liknande presentationer


Google-annonser