OOP F1:1. Föreläsning 1. Introduktion till kursen OOP Vad är Java? Ett första Java-program Variabler Tilldelning. Marie Olsson

Relevanta dokument
OOP Objekt-orienterad programmering

OOP Objekt-orienterad programmering

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

SMD 134 Objektorienterad programmering

I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program

Objektorienterad Programmering (TDDC77)

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java

Programmering för språkteknologer II, HT2011. Rum

Objektorienterad Programmering (TDDC77)

F4. programmeringsteknik och Matlab

Grundläggande programmering DVG A08 & ISG A04. Allmän information. Å vem är jag då. Karlstads Universitet, Johan Öfverberg 1

Programmering A. Johan Eliasson

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

Översikt 732G11 PROGRAMMERING 1. Personal. Kursens mål. Litteratur. Kursens innehåll

SMD 134 Objektorienterad programmering

OOP Tentamen

Objektorienterad programmering i Java

Studentportalen UNIX-konton (systemansvariga P4118) Lärare: Tom Smedsaas,

TDDC30. Kursledning Kursledare: Jonas Lindgren. Labassistent: Jonas Lindgren Labassistent: Niklas Holma Labassistent: Erik Nilsson

Classes och Interfaces, Objects och References, Initialization

OOP Objekt-orienterad programmering

Anteckningar 1: Grundläggande saker

Introduktion till Datalogi DD1339. Föreläsning 2 22 sept 2014

Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C.

Undervisning. Examination

Arv: Fordonsexempel. Arv. Arv: fordonsexempel (forts) Arv: Ett exempel. En klassdefinition class A extends B {... }

Kompilera och exekvera Javakod

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

Programstruktur och terminologi. Programmet producerar följande utskrift i terminalfönstret: Ett Javaprogram består av en eller flera klasser

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU

OOP Tenta

Datastrukturer. Erik Forslin. Rum 1445, plan 4 på Nada

Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

Imperativ programmering. Föreläsning 4

Tentamen , Introduktion till Java, dtaa98, dtea53

Föreläsning 3: Typomvandling, villkor och val, samt textsträngar

Föreläsning 1. Presentation av kursen Vad är programmering? Lite om java och utvecklingsmiljöer Aktivitetsdiagram Ett första program

Föreläsning 1 & 2 INTRODUKTION

TDIU01 - Programmering i C++, grundkurs

OOP Omtenta

Undervisning. Examination

Att använda Java SE JDK 6

Introduktion till programutveckling

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer

OOP Tentamen

TDDC77 Objektorienterad Programmering

Övning2. Variabler. Data typer

Lektion Java Grunder. Javas historia. Programmeringsspråket Java. Skillnaderna mellan Java och C++ JVM (Javas Virtuella Maskin)

Laboration 10 - Eclipse

F1 - Introduktion. ID1004 Objektorienterad programmering Fredrik Kilander

Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 4 Erik Nilsson, Institutionen för Datavetenskap, LiU

Föreläsning 1 & 2 INTRODUKTION

TDDE10 m.fl. Objektorienterad programmering i Java Föreläsning 6 Erik Nilsson, Institutionen för Datavetenskap, LiU

Personal Objektorienterad programmeringsmetodik 5DV081 5DV109

OOP Tenta

OOP Omtenta

Introduktion till Java

OOP Omtenta

Parameteröverföring. Exempel. Exempel. Metodkropp

Lite mer om Javas stöd för fält. Programmering. Exempel: vad är det största talet? hh.se/db2004. Fält samt Input/Output

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Strukturdiagram. Styra. Algoritmer. Val

Varför ha kännedom om datateknik och programmering?

Editering, Kompilering och Exekvering av Javaprogram

Tentamen ID1004 Objektorienterad programmering May 29, 2012

OOP Objekt-orienterad programmering

Tentamen OOP

OOP Exempel Tentamen 2007

F2 Datatyper och variabler. ID1004 Objektorienterad programmering Fredrik Kilander

1 Datorn som miniräknare. 1.1 Räkneoperationer. 1.2 Variabler

Objektorienterad programmering Föreläsning 4

Klassdeklaration. Metoddeklaration. Parameteröverföring

Idag. statiska metoder och variabler. private/public/protected. final, abstrakta klasser, gränssnitt, delegering. wrapper classes

TDDE10 TDDE11, 725G90. Gemensam kurswebsida på:

NetBeans 7. Avsikt. Projektfönster

Programmering för språkteknologer I, VT2012. Rum

Övning 1. Datateknik A, Java I, 5 poäng. Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program

OOP Omtenta

Varför ha kännedom om datateknik och programmering?

F5 Selektion och iteration. ID1004 Objektorienterad programmering Fredrik Kilander

Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen.

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare

Objektorientering. Objekt och metoder. Objektorientering. Viktiga begrepp. Klass. Objekt. Deklarativ programmering

Föreläsning 3: Booleans, if, switch

F4 Klasser och Metoder. ID1004 Objektorienterad programmering Fredrik Kilander

Föreläsning 1. Föreläsning 1

Eclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas.

Lösningsförslag: Instuderingsfrågor, del A

Föreläsning 1. Introduktion till programutveckling. Varför ha kännedom om datateknik och programmering? Vad är en dator? Vad är en dator?

Att använda Java SE JDK 6

Objektorienterad Programmering DAT043. Föreläsning 1 15/1-18 Moa Johansson

TENTAMEN OOP

OOP Tentamen

Föreläsningsmaterial (Syntax och variabler)

Föreläsning 1-2 innehåll

Transkript:

OOP F1:1 Föreläsning 1 Introduktion till kursen OOP Vad är Java? Ett första Java-program Variabler Tilldelning

OOP Objekt-orienterad programmering Delkursansvarig: First Class-konferens: Kursens webbsidor: OOP F1:2 (marieols@dsv.su.se) OOP(DSK/GES) OOP(DSK/GES) Fritt forum för handledning OOP (DSK/GES OOP (DSK/GES) Inluppar för inlämning av inlämningsuppgifter http://people.dsv.su.se/~marieols/oop/ 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 Grupp 1-3 personer. Finns även övningsuppgifter ej obligatoriska, ingen inlämning. Handledning på plats på DSV: http://handledning.dsv.su.se/ (dagar och tider för handlening på DSV se kursens webbsidor)

OOP Objekt-orienterad programmering OOP F1:3 Innehåll: Man kan säga att Java består av två delar: Språk-kärna Java's språkkärna - imperativa delen - OOP delen (Objekt Orienterad Programmering) Användning av API-biblioteket (Application Programming Interfaces) API-bibliotek imperativ del datatyper deklarationer programsatser metoder mm, mm Innehåll forts.: OOP-del klasser objekt inkapsling arv polymorfism mm, mm 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å: http://java.sun.com/javase/6/docs/api/ Konstruktion av mindre program

OOP Objekt-orienterad programmering OOP F1:4 Litteratur: Kommunikation: Lewis & Loftus Java Software Solutions, Upplaga 7 (annan bok kan användas) Föreläsningsbilder mm. material First Class-konferens för inlämning av inlämningsuppgifter samt elektronisk handledning. Handledning på plats på DSV: http://handledning.dsv.su.se/ Webbplats för material. http://people.dsv.su.se/~marieols/oop/

Java är freeware, kan laddas ner från Sun (java.sun.com) OOP F1:5 Instruktioner och hjälp för installation av Java, se DSV:s webbsidor: http://dsv.su.se/introdator/java/ Java SE - JDK 6 (Java Standard Edition version 6) Innehåller det man behöver Kompilator (översättningsprogram) (javac) JVM (Java Virtual Machine), dvs interpretatorn (läser javabytekod och utför instruktionerna i koden) (java) API-biblioteket (plus lite annat...)

// Ett första JAVA-program OOP F1:6 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 För att kunna köra programmet- spara på fil Filnamn - samma som klassnamn + suffixet.java

OOP F1:7 Kompilering & Exekvering (interpretering) Källkoden på filen Hello.java Kompilering: >javac Hello.java Genererar bytekodsfilen Hello.class Exekvering (egentligen interpretering av bytekoden...): >java Hello Hej Världen! Skrivs ut i kommandofönstret

Programmering De flesta program ser ut så här: OOP F1:8 Indata Program Utdata Data kan vara av olika typ: "Kalle Nilsson" 2011 73.67 'X' 730512 true "Stockholm" Måste representeras i programmet.

Vi börjar med att titta på Javas enkla (primitiva) datatyper Heltalstyper: : byte short int long 8 bitar 16 bitar 32 bitar 64 bitar OOP F1:9 Flyttalstyper: float double Övriga: char boolean 32 bitar 64 bitar Unicode 16 bitar (256 kombinationer) true / false

Variabler - deklaration och tilldelning OOP F1:10 int x; double d; char ch; boolean ok; x=23; d=45.97; ch='a'; ok=true; Namngivning mm - följ API-bibliotekets utseende Prefixet final ger konstant, kan ej förändras int tal=10; final int MAX=100; int summa; summa=x+tal; int sum=x+tal; double d1, d2, d3; Konstanter brukar skrivas med versaler

Enkel datatyp kontra objekt OOP F1:11 int tal1, tal2; tal1=35; tal2=112; tal1=tal2; Textsträngar (INTE enkel datatyp): String String s1, s2; s1=new String("Hej"); s2=new String("Hopp"); s1=s2; Kan skrivas som: s1="hej"; s2="hopp"; Hur fungerar operatorn +? int sum=tal1+tal2; String ny=s1+s2;