ITK:P1 Föreläsning 2 Introduktion till objektorientering DSV Marie Olsson.

Slides:



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

Avlusning Debugger (”avlusare”) Breakpoints Watch.
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.
Next previous Internetprogrammering 2000 Internetprogrammering 2000 Föreläsning 10 Distribuerad programmering med Javas RMI, Remote Method Invocation.
Föreläsning 3 Repetition Operatorer Styrstrukturer Deklaration och anrop av metoder.
Klassarv och inkapsling
Repetition av objektorientering
OOP Objekt-orienterad programmering
Objektorienterad utveckling Lektion 2 Objekt, överlagring, överskuggning, klasshierarkier och dynamisk bindning KTH Peter Mozelius.
Metoder i java Det finns två typer av metoder i java
Arv.
Välkommen Vahid Mosavat
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 ITK:P1 Föreläsning 6 Layoutmodeller i Java DSV Marie Olsson.
Next previous Introduktion till Java Av Björn Eiderbäck Adress: Rum 1641, 6tr NADA Osquars Backe 2 Tel: OOMPAE 2000.
1 Föreläsning 6 Klass Object, instans av klass public/private Klassvariabler och klassmetoder.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Klasser och instansvariabler -Tabeller av klassobjekt.
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.
Repetition inför slutprovet
Klasser och objekt Klasser, objekt och instansvariabler
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.
1 ITK:P1 Föreläsning 7 Algoritmer och datastrukturer DSV Marie Olsson.
Mer om arv - Polymorfism Kursbok: “Objects First with Java - A Practical Introduction using BlueJ”, David J. Barnes & Michael Kölling Fredric Ragnar
Objektorienterad Modellering Programmering och Analys
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 3 ( ) INNEHÅLL: -Jämförelseoperatorer -Villkorssatser -Logiska operatorer.
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.
Föreläsning 8 Arv och abstrakta klasser. Arv Definierar en klass utifrån en redan existerande klass Den nya klassen utökar den ärvda klassen ( extends.
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.
1 Föreläsning 5 Programmeringsteknik och Matlab 2D1312/2D1305 Repetition Metoder 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.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 5 ( ) INNEHÅLL: -Metoder.
TILLÄMPAD DATALOGI (TILDA) Övning 3
Föreläsning 12 Om slutprovet. Repetition –deklaration av variabler –skapande av objekt (instansiering) –Vektorer och Vector-klassen –Klasser –Instans-/klassvariabler.
Föreläsning 4 Klasser Och Objekt.
1 ITK:P2 F6 Sortering av generiska containerklasser DSV Peter Mozelius.
1. Ett problem/uppgift.
PROGRAMMERINGSTEKNIK Övningsgrupp 3 Marcus Hjelm
Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 5 ( ) INNEHÅLL: -Introduktion till programmeringsspråket Java -Den allmänna.
PROCESSPROGRAMMERING Föreläsning 1 ( )‏ Innehåll: Introduktion till paralellprogrammering (“concurrent programming”)‏ Introduktion till parallellprogrammering.
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 F13:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 13 Repetition variabler, selektion och iteration.
Föreläsning 17 Repetition. Källkodsformat Unicode används åäöμψζ tillåtna i namn på identifierare Inte alla miljöer klarar av det Källkod Bytekod Java.
Föreläsning 3 Villkorssatsen if Slingor: while och for Felsökning.
OOP F5:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 5 Klasser och objekt Skapa objekt - new Referenser Konstruktorer Inkapsling.
Övning2 programmeringsteknik och Matlab 2D1312/ 2D1305
Övning 3. Repetition Metoder class RepetitionMetoder { public static void main(String [] args) double längd = 2.0; double bredd = 1.0; double area =
TILLÄMPAD DATALOGI (TILDA) Övning 2
Föreläsning 5 Objekt Klasser Konstruktorer Metoder Minnesbilder av objekt.
Programmeringsteknik för K och Media
Föreläsning 7 Repetition Sammansatta datatyper –vektor (hakvektor, array) –matris.
Föreläsning 3: Booleans, if, switch
Presentationens avskrift:

ITK:P1 Föreläsning 2 Introduktion till objektorientering DSV Marie Olsson

2 Objektorientering Världar uppbyggda av objekt Inte helt olikt vår egen värld Ett sätt att modularisera våra system Objekten delas in i klasser Klasserna kan ärva varandra En klass blir en specialisering av en annan Ett antal klasser bildar en taxonomi

3 Objektorientering Klasserna ordnas i en hierarki som motsvarar deras inbördes ordning

4 Objektorientering En klass innehåller en specifikation som definierar beteenden och egenskaper hos de klassinstanser (objekt) som man sedan skapar (instansierar) av klassen Av en klass Tax kan man sedan skapa en mängd olika taxart: Tax t1 = new Tax();

5 Objektorientering

6 Objektorientering i Java En enkel klass med en konstruktor: public class Katt { private String namn; public Katt(String s){ namn = s; }//konstruktor }//klassen Katt

7 Objektorientering i Java I en annan klass kan vi sedan instansiera ett valfritt antal kattobjekt: public class KattProgram1 { public static void main(String[] arg){ Katt k1 = new Katt(”Jameson”); Katt k2 = new Katt(”Schrödinger”); }//main }//KattProgram

8 Objektorientering i Java För klasser, variabler och metoder finns det reserverade ord för åtkomstkontroll i Java De fyra val som finns är: private protected public ingen modifierare (paketåtkomst)

9 Programmering i Java Koden för ett KattProgram sparas i en fil i en katalog med namnet KattProgram1.java Källkoden kompileras sedan genom: C:\katalog> javac KattProgram1.java Om koden är utan fel skapas en klassfil: KattProgram1.class som kan exekveras med: C:\katalog> java KattProgram1

10 Programmering i Java Ett till litet Hello World: public class HelloWorld { public static void main(String[] arg){ System.out.print(”Hello ”); System.out.println(”World!”); }//main }//HelloWorld I Javas klass System finns ett objekt out av typen PrintStream med metoder som print() och println()

11 Programmering i Java En objektorienterad variant av Hello World: public class HelloPlace { private String greeting = ”Hello ”; public HelloPlace(String place){ greeting = greeting + place; }//konstruktor public String sayHello(){ return greeting; }//sayHello }//klass HelloPlace

12 Programmering i Java En klass som hallåar ut vår hälsning: public class HelloTest { public static void main(String[] arg){ HelloPlace hp = new HelloPlace(”Stockholm"); String message = hp.sayHello() + "!"; System.out.println(message); }//main }//HelloTest

13 Programmering i Java public class Kattprogram2 { public static void main(String[] args){ //Här anropas defaultkonstruktorn Katt katt1 = new Katt(); System.out.println(katt1.visaKatt()); //Här anropas konstruktorn som tar ett argument Katt katt2 = new Katt("Jansson"); System.out.println(katt2.visaKatt()); }//main }

14 Programmering i Java class Katt{ private String kattvariabel="Det här är "; public Katt(){ kattvariabel = kattvariabel + "en katt"; }//defaultkonstruktor public Katt(String namn){ kattvariabel = kattvariabel + namn; }//konstruktor som tar argument public String visaKatt(){ return kattvariabel; }//visaKatt }//Katt

15 Jämförelseoperatorer i Java Vi behöver ibland jämförelseuttryck Jämförelseoperatorerna i Java är: == (lika med) != (inte lika med) (större än) <= (mindre än eller lika med) >= (större än eller lika med) Se upp med = (tilldelning) och == (jämförelse)

16 Logiska operatorer i Java Logiskt OCH: && (A && B) är sant om både A OCH B är sanna A B (A && B)

17 Logiska operatorer i Java Logiskt ELLER: || (A || B) är sant om A ELLER B är sann A B (A || B)

18 Logiska operatorer i Java Logiskt ICKE (invers) ! OM boolean A = false; Så är ! A sann (A || !A) är alltid sant (A && !A) är alltid falskt Tack för idag!!