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

Slides:



Advertisements
Liknande presentationer
Föreläsning 9 Programmeringsteknik och Matlab 2D1312/2D1305
Advertisements

INTRODUKTION TILL PROGRAMMERING
Array Skriv ett program som frågar följande: ”Hur många tal vill du mata in?” användaren matat in ett tal t.ex n. då frågar programmet n ggr följande.
Klasser och objekt.
Imperativ Programmering
Klassarv och inkapsling
Metoder i java Det finns två typer av metoder i java
Föreläsning 4 Python: mera om funktioner och parametrar
Objektorienterad tänkande
Välkommen Vahid Mosavat
Programmeringsteknik K och Media
Programmeringsteknik för K och Media
Föreläsning 13 Allt om tentan. Sistaminutenhjälp: På fredag 17 december kl 12 sitter Linda i kemi-fiket och svarar på frågor.
Programkodens uppbyggnad
Att programmera i språket Java
Föreläsning 6 Referenser Objekt som parametrar public/private Klassvariabler och klassmetoder.
Föreläsning 2 Primitiva datatyper Variabler och konstanter Tilldelning Inläsning Operatorer Villkorssatsen if Slingor: while och for.
1 Föreläsning 6 Klass Object, instans av klass public/private Klassvariabler och klassmetoder.
Alice in Action with Java
i olika programmeringsspråk
INTRODUKTION TILL PROGRAMMERING
Föreläsning 11 Arrayer.
Objektorienterad programmering i Java
OOP F4:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 4 Metoder klass-metoder instans-metoder.
Programmering i C# 3. Klasser.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 6 ( ) INNEHÅLL: -Mera om tabeller.
Klasser och objekt Klasser, objekt och instansvariabler
Pointers. int a=5; int f(int b) { a--; b++; return b; } int main() { int a=3; printf("%d,",f(a)); printf("%d",a); return 0; }
int res2=Math.max(tal1,tal2);
Föreläsning 2 Kort Översikt Över Javaspråket. Källkodsformat Unicode används åäöμψζ tillåtna Inte alla miljöer klarar av det Källkod Bytekod Java VM för.
Programmeringsteknik för Media1 & K1
OOP F6:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 6 Mer om klasser och objekt Hantera många objekt ArrayList toString() – metoden.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 4 ( ) INNEHÅLL: -Logiska opertorer -Poster.
1 Föreläsning 7 Repetition Instansvariabler och klassvariabler Klassmetoder och Instansmetoder.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Klasser -Att definiera egna klasser -Klassvariabler -Klassmetoder.
OOP F3:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 3 Iteration Många variabler av samma sort – Arrayer.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 8 ( ) INNEHÅLL:Klasser: -Konstruktorer -Klassvariabler -Instansmetoder -Privata.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Metoder -Lokala variabler -Mera om klasser: -Nyckelorden.
Jonny Karlsson GRUNDKURS I PROGRAMMERING MED JAVA Föreläsning 9 ( ) INNEHÅLL: -Tabeller av klassobjekt -Användning av Java API specifikationen.
1 Föreläsning 6 Programmeringsteknik och Matlab 2D1312/2D1305 Metoder & parametrar Array API och klassen ArrayList.
Föreläsning 10 Stränghantering.
Next previous RMI, Remote Method Invocation Om du har boken av Marty Hall, läs avsnitt 15.8 För fler exempel se:
Föreläsning 1 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Föreläsning 5 Arrayer & ArrayList Hur man använder API:n
Programmering i C# 9. Pekare och osäker kod.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 2 ( ) INNEHÅLL: -Variabler och datatyper -Tilldelning av variabler -Aritmetiska.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 5 ( ) INNEHÅLL: -Metoder.
Föreläsning 12 Om slutprovet. Repetition –deklaration av variabler –skapande av objekt (instansiering) –Vektorer och Vector-klassen –Klasser –Instans-/klassvariabler.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 4 ( ) INNEHÅLL: -Logiska operatorer och logiska uttryck -Referenstyper.
Föreläsning 4 Klasser Och Objekt.
1. Ett problem/uppgift.
ITK:P1 Föreläsning 2 Introduktion till objektorientering DSV Marie Olsson.
INTRODUKTION TILL PROGRAMMERING
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 5 ( ) INNEHÅLL: -Repetitionssatser: do-satsen och for-satsen -Operatorer:
Class VattenKraft{ public static void main(String[] args){ int num=150; int i, totflöde, maxflöde; int[] fall = new int[num]; //vattenflödet i vattenfallen.
OOP F5:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 5 Klasser och objekt Skapa objekt - new Referenser Konstruktorer Inkapsling.
Föreläsning 5 Objekt Klasser Konstruktorer Metoder Minnesbilder av objekt.
Programmeringsteknik för K och Media
Föreläsning 5 Klasser och instanser
Föreläsning 7 programmeringsteknik och Matlab 2D1312/2D1305 Metoddeklaration och parametrar Arrayer och ArrayList.
Föreläsning 7 Repetition Sammansatta datatyper –vektor (hakvektor, array) –matris.
OOP - teori1 OOP del II– Föreläsning 5 vecka 6. OOP - teori2 Klasser Substantiv i singularis stavat med stor bokstav till exempel Human Dog Account Circle.
1 Föreläsning 2 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Föreläsning4 Repetition slingor Metoder. while-sats består av följande delar: 1. while 2. Villkor-sats (condition) 3. uttryck (statement) while-sats int.
1 Föreläsning 6 Repetition på metoder Referenser Objekt som parametrar public/private Klassvariabler och klassmetoder.
1 Föreläsning 4 Metoder & parametrar Array API och klassen ArrayList.
OOP&M - teori1 OOP del II– Föreläsning 2 vecka 46 Konstruktorer Instansmetoder Kapitel 14 i kursboken.
Malmö högskola Rolf Axelsson 2003/2004 DA7231, 4 poäng Referensvariabel Klass och konstruktorer Klass med set- och get-metoder Klass och fält Fler metoder.
1 Föreläsning 7 Repetition Instansvariabler och klassvariabler Klassmetoder och Instansmetoder.
1 Mer om metoder, variabler, klasser och objekt. Kursboken: - Kapitel 6 - Kapitel 8.
Presentationens avskrift:

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

2Jonny Karlsson 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.

3Jonny Karlsson 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.

4Jonny Karlsson 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.

5Jonny Karlsson 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.

6Jonny Karlsson 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.

7Jonny Karlsson 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; }

8Jonny Karlsson 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. }}

9Jonny Karlsson 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.

10Jonny Karlsson 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