Presentation laddar. Vänta.

Presentation laddar. Vänta.

OOP F1:1 Stefan Möller OOP Objekt-orienterad programmering DelkursansvarigStefan Möller Kursens webbsidorhttp://people.dsv.su.se/~sm/oop/

Liknande presentationer


En presentation över ämnet: "OOP F1:1 Stefan Möller OOP Objekt-orienterad programmering DelkursansvarigStefan Möller Kursens webbsidorhttp://people.dsv.su.se/~sm/oop/"— Presentationens avskrift:

1 OOP F1:1 Stefan Möller OOP Objekt-orienterad programmering DelkursansvarigStefan Möller Kursens webbsidorhttp://people.dsv.su.se/~sm/oop/ Föreläsning 1 Introduktion till kursen OOP Vad är Java? Ett första Java-program Input / output Allmänt om programmering – se gärna ITP Föreläsning 2: https://video.dsv.su.se/ht10/dvkintro/

2 OOP F1:2 Stefan Möller Skiv- minne CD-läsare Diskett-läsare Sekundär- minnes- enheter (SM) Central-enhet PMCPU

3 OOP F1:3 Stefan Möller Primär-minne (PM)Processor (CPU) PM är en vektor av minnesceller 8 bitar = 1 byte, 4 byte = 1 ord t ex 512 MB (megabyte - miljoner byte) I PM finns program-instruktioner & -data R1 R2 Ett antal register... Styr- enhet Aritmetisk enhet

4 OOP F1:4 Stefan Möller Kod i högnivåspråk måste översättas till maskinkod. Kompilering: Interpretering: Källkod i högnivåspråk Kompilator Olika beroende på datorsystem Maskinkod som kan exekveras i datorsystemet Källkod i högnivåspråk Interpretator Olika beroende på datorsystem Läser en instruktion i taget, översätter till maskinkod och exekverar

5 OOP F1:5 Stefan Möller JAVA "Plattformsoberoende" Källkod kompileras till s.k. "Java bytekod" Java bytekod interpreteras på aktuell dator Java källkod Java kompilator Java bytekod Java interpretator Måste finnas på den dator där man vill köra ett Java-program. Finns i de flesta webbläsare

6 OOP F1:6 Stefan Möller Vad är Java? Två logiska delar: imperativ del datatyper deklarationer programsatser metoder mm, mm OOP-del klasser objekt inkapsling arv polymorfism mm, mm Språk-kärnaAPI-bibliotek Ett (stort!) antal färdiga klasser som kan användas i olika program. Uppdelat i delbibliotek, t.ex.: java.io java.util javax.swing m.fl, m.fl. Dokumentation på:

7 OOP F1:7 Stefan Möller Java är freeware, kan laddas ner från Sun (java.sun.com) Olika versioner Java SE - JDK 6 (Java Standard Edition version 6) Innehåller det man behöver Kompilator (javac) JVM (Java Virtual Machine), dvs interpretatorn (java) API-biblioteket (plus lite annat...) (på MS Windows måste path-variabeln uppdateras...) Instruktioner och hjälp för installation, se DSV:s webbsidor:

8 OOP F1:8 Stefan Möller Kursen OOP Läses av flera olika studentgrupper: DSK1:OOP (ID1013) GES:OOP OBS – samma kurs med samma innehåll. Kursen är på 7.5 hp, examinationen uppdelad på: Inlämningsuppgift 1, 1.5 hp Inlämningsuppgift 2, 3 hp Tentamen, 3 hp Inlämningsuppgifterna betyg G/U, tentan betyg A-F

9 OOP F1:9 Stefan Möller Kursen OOP Innehåll:Java's språkkärna imperativa delen OOP delen Användning av API-biblioteket Konstruktion av mindre program Litteratur:Lewis & Loftus Java Software Solutions, Upplaga 6 (annan bok kan användas) Föreläsningsbilder mm. material Kommunikation: First Class-konferens för inlämning av inlämningsuppgifter samt handledning. Webbplats för material.

10 OOP F1:10 Stefan Möller // Ett första JAVA-program class Hello{ public static void main(String[]args){ System.out.println("Hej Världen!"); } // Resten av raden är en kommentar, ignoreras av kompilatorn { } - start och slut på ett block Case Sensitive (skiftlägeskänsligt) Namngivning mm - följ API-bibliotekets utseende Filnamn - samma som class-namn + suffixet.java Hello.java - kompileras och Hello.class skapas

11 OOP F1:11 Stefan Möller Kompilering & Exekvering (interpretering) Källkoden på filen Hello.java Kompilering: >javac Hello.java Ger bytekodsfilen Hello.class Exekvering (egentligen interpretering av bytekoden...): >java Hello

12 OOP F1:12 Stefan Möller Programmering IndataProgramUtdata Data kan vara av olika typ: "Kalle Nilsson" 'X' true "Stockholm" Måste representeras i programmet.

13 OOP F1:13 Stefan Möller Javas enkla (primitiva) datatyper Heltalstyper: byte8 bitar short16 bitar int32 bitar long64 bitar Flyttalstyper: float32 bitar double64 bitar Övriga: charUnicode 16 bitar booleantrue / false Textsträngar (INTE enkel datatyp): String

14 OOP F1:14 Stefan Möller Output Görs via System.out, anropa antingen print eller println: System.out.print("Hej"); System.out.println("Hopp"); System.out.println("Oj"); Värdet av en variabel kan skrivas ut: int x=25; System.out.println(x); Ska flera saker skrivas ut så slås de ihop med operatorn + System.out.println("Resultatet="+x); System.out.println("Namn="+namn+"Åldern="+ålder);

15 OOP F1:15 Stefan Möller Input Görs via System.in. Måste ”filtreras”, lämpligen med en Scanner Scanner sc=new Scanner(System.in); String namn=sc.nextLine(); Ofta först ställa fråga, sedan läsa in: System.out.print("Vad heter du?"); String namn=sc.nextLine(); System.out.print("Hur gammal är du?"); int ålder=sc.nextInt(); Olika inläsningsmetoder i klass Scanner: sc.nextLine() sc.nextInt() sc.nextDouble() m.fl. för olika input-varianter Klassen Scanner finns i delbiblioteket java.util Måste anges "nånstans" Varför behöver inte String och System anges på motsvarande sätt?

16 OOP F1:16 Stefan Möller Output och input med JOptionPane Med en biblioteksklass som heter JOptionPane kan man skapa enkla dialogrutor: JOptionPane.showMessageDialog(null, "Meddelande: "); String namn=JOptionPane.showInputDialog("Namn:"); OBS – endast String kan läsas in, vill man ha annan sort måste man konvertera. String str = JOptionPane.showInputDialog("Hur gammal är du?"); int ålder = Integer.parseInt(str); JOptionPane ligger i delbiblioteket javax.swing


Ladda ner ppt "OOP F1:1 Stefan Möller OOP Objekt-orienterad programmering DelkursansvarigStefan Möller Kursens webbsidorhttp://people.dsv.su.se/~sm/oop/"

Liknande presentationer


Google-annonser