Föreläsning 3 sept 10 (Måndag v 37). DD Chapter 3.

Relevanta dokument
Föreläsning 2 sept 05 (Onsdag v 36). DD Chapter 2.

Klassen javax.swing.timer

Arv. Fundamental objekt-orienterad teknik. arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer

Objektorienterad Programkonstruktion. Föreläsning 3 9 nov 2015

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

Kort om klasser och objekt En introduktion till GUI-programmering i Java

Objektorienterad Programkonstruktion. Föreläsning 3 7 nov 2016

Föreläsning 8 Programmeringsteknik och Matlab 2D1312/2D1305. Klass Object, instans av klass public/private Klassvariabler och klassmetoder

LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p

Att prova på en enkel Applet och att lära sig olika sätt att hämta data från tangentbordet. Du får även prova på att skapa din första riktiga klass.

Objektorienterad programmering i Java. Föreläsning 5 Kort om Java-Applets

Föreläsning 8 Programmeringsteknik och Matlab DD1312. Klassmetod. Egen modul

Lab5 för prgmedcl04 Grafik

Innehåll. dynamisk bindning. och programmering CRC) u Arv, polymorfi och

Datalogi I, grundkurs med Java 10p, 2D4112, Fiktiv tentamen, svar och lösningar och extra kommentarer till vissa uppgifter 1a) Dividera förs

DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin

Subklasser och arv Inledning till grafik (JFrame och JPanel). Något om interface. Objektorienterad programvaruutveckling GU (DIT011) Subklasser

Uppgiften är att beskriva en kvadrat i ett Java program. En första version av programmet skulle kunna se ut så här:

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.

INTRODUKTION TILL JDBC

"Är en"-relation. "Har en"-relation. Arv. Seminarium 2 Relevanta uppgifter. I exemplet Boll från förra föreläsningen gällde

Laboration 1 Introduktion till Visual Basic 6.0

Objektorienterad programmering med Java Swing: Händelser, lyssnare och applets

Föreläsning 8. Arv. Arv (forts) Arv och abstrakta klasser

TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET

Objektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11

Introduktion till programmering D0009E. Föreläsning 1: Programmets väg

Objektorienterad programmering

l uppgiftsformulering l algoritmkonstruktion l verifikation l kodning l testning och avlusning l validering l dokumentering l underhœll Kapitel 2

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.

2D1339 Programkonstruktion för F1, ht 2004

Övningsuppgifter kapitel 8

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

FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY , kl

2D1311 Programmeringsteknik för Bio1 och Bio2, vt 2003 Fiktivt prov På flervalsfrågorna är endast ett svar rätt om inget annat anges i frågan! Det rik

Föreläsning 4. Klass. Klassdeklaration. Klasser Och Objekt

2D1339 Programkonstruktion för F1, ht 2003

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 14

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

NetBeans 7. Avsikt. Projektfönster

Labora&on 2 Funk&oner, if och loop övningar/uppgi:er

Objektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11

Objektorienterad Programkonstruktion. Föreläsning jan 2016

Kopiering av objekt i Java

Föreläsning 1 sept 03 (måndag v 36). Välkommen till kursen och DD Chapter 1.

Föreläsning 2. Operativsystem och programmering

Objektorienterad programmering. Fält som funktionsresultat. Mer om fält: att uppdatera ett parameterfält. Kontrast: Parametrar av primitiv typ

Parameteröverföring. Exempel. Exempel. Metodkropp

Högskolan Dalarna sid 1 av 7 DI-institutionen Hans-Edy Mårtensson Sten Sundin Micael Karlsson

Föreläsning 5 (6) Metoder. Metoder Deklarera. Metoder. Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Om att lära sig programmera. Föreläsning 1-2 Innehåll.

Lite mer om CGI-programmering

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2

Föreläsning 13 Innehåll

Labora&on 1 Variabler och beräkningar övningar/uppgi9er

Chapter 3: Using Classes and Objects

Föreläsning 2, vecka 8: Repetition

Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten?

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:

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

Arv. Objektorienterad och komponentbaserad programmering

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

Outline. I Vi kan lätt göra samma sak för fyra variabler... I Hur gör vi för 400 inlästa värden? I Ofta behöver man flera likadana variabler

DD1342 Programkonstruktion för F1, ht 2007

Grundkurs i programmering - intro

2D1342 Programkonstruktion för F1, ht 2006

Introduktion till programmering och Python Grundkurs i programmering med Python

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design Alex Gerdes, 2016

Objektorienterad programmering Föreläsning 10. Copyright Mahmud Al Hakim Sorteringsalgoritmer

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

TDIU01 - Programmering i C++, grundkurs

Högskolan Dalarna sid 1 av 7 DI-institutionen Hans-Edy Mårtensson Sten Sundin

Klassdeklaration. Metoddeklaration. Parameteröverföring

(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

ID1004 Laboration 3, 5-6 November 2012

4.4 Swing ett interaktivt grafiskt gränssnitt

ITK:P1 Föreläsning 8. Verktyget Javadoc. Kommentarer för Javadoc. Multimedia för spelkonstruktion

Applets med komponenter

Objektorienterad programmering. Grundläggande begrepp

Innehållsförteckning. 9 Större projekt Övningsuppgifter...32

Programutveckling med Java Development Kit. (JDK 1.1.x) och Programmers File Editor (PFE 7.02)

Personal Objektorienterad programmeringsmetodik 5DV081 5DV109

Objektorienterad Programkonstruktion. Föreläsning 6 23 nov 2015

Föreläsning 4 Programmeringsteknik DD1310. Felhantering. Syntax. try och except är reserverade ord som används för hantering av exekverings fel.

Inledande programmering med C# (1DV402) Ditt första C#-program med Visual Studio

2I1049 Föreläsning 5. Objektorientering. Objektorientering. Klasserna ordnas i en hierarki som motsvarar deras inbördes ordning

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

Objektorientering: Lagring, räckvidd och livstid

Programmeringsteknik II - HT18. Föreläsning 6: Grafik och händelsestyrda program med användargränssnitt (och Java-interface) Johan Öfverstedt

Laboration 10 - Eclipse

PROGRAMMERINGSTEKNIK TIN212

Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod

Objektorienterad programmering E. Algoritmer. Telefonboken, påminnelse (och litet tillägg), 1. Telefonboken, påminnelse (och litet tillägg), 2

Idag. Exempel, version 2. Exempel, version 3. Ett lite större exempel

Objektorienterad programmering E. Telefonboken, än en gång. Gränssnitt. Telefonboken med gränssnitt specificerat, del 1.

UML. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

Klasshierarkier. Klasser kan byggas på redan definierade klasser

Transkript:

Föreläsning 3 sept 10 (Måndag v 37). DD Chapter 3. Applikationer och s. Det finns två sorters java-program som används på olika sätt: Körning av applikation (vanliga, fristående program):...>java klass // Klassfilen klass skall åtminstone innehålla //(en översättning av ) en -metod Körning av med bläddrare: Dessa program är ämmnade att köras genom att man man klickar på en webbsida som körs med en bläddare, t ex Netscape. webb-sidor beskrivs av filer i formatet (sidbeskrivningsspråket) html, filer som brukar ha suffix.html. I html finns särskild kod för att instuera bläddaren att det man klickar på är en, så bläddaren kan hämta klassfilen (från någonnstans på webben) och exekvera den lokalt. Bläddaren kör sedan programmet, dvs bläddaren innehåller en Java Virtuel Machine. Den bläddare ni har klarar antagligen inte bokens s, som är för moderna med swing-s, men jag har lyckat byta till en modernar netscape som klarar jobbet. Bekvämmare för programutvecklare är att använda en mini-mini-bläddare, som klarar swing, som bara kan köra s och inget annat. Dessa s måste finnas loklt på datorn....> fil.html Filen fil.html (på arbetskatalogen) kan se ut så här: <html> < code = "fil.class" width = 800 height = 800 > </> </html> Filen fil.class, som ligger på arbetskatalogen, skall innehåll en klass som beskriver s- eller JApplets-.

Klasser med klass- och klasser som definerar. Det finns (lite förenklat) två användningar av klasser: Klasser med klass: En sådan klass innehåller en eller flera som är deklarerade med ordet static. De klasser vi hitills gjort har innehållet en enda sådan metod, nämligen (-metoden). Att programmera med sådan klasser påminner om traditonell impåerativprogrammering med Fortran, C, Pascal, Basic osv. Klasser som definierar : En sådan klass innehåller en eller flera som är deklarerade utan ordet static. En sådan klass kan användas som en typ, och man kan deklarera hur många referns man vill som var och en kan referera till var sitt av den sort som klassen beskriver. Hittils har vi t ex använt String-klassen. En viktig egenskap hos är att man kan tänka sig att varje har sin egen uppsättning värden och också har en egen uppsättning av de som hör till klassen. Ex på körning av ett amin-metod med lokla na String firstnumber; Strint secondnumber; int number1; int number2; lokala firstnumber secondnumber 45.5 number1 number2 72.37 "45.5" "72.37" massor av String- massor av String- D&D Kapitel 3 är en första användning avobjket. Man behöver dock inte kunna skapa etet av någon sort, det gör. Våra ar kommer att behöva massor av ; men de flesta kommer vi inte att behöva skriva själva, vi kommer att ärva na från en färdig klass JApplet.

Semantiken för programmet WelcomeApplet Så här ser det ut när skapat WelcomeApplet-et (en instans av klassen WelcomeApplet). Metoden har ännu inte anropats. (klass) (styr datorn) WelcomeApplet inenhet utenhet Applet skapar ett WelcomeApplet- sekundärminnen WelcomeApplet.java WelcomeApplet.class javax swing JApplet.class Varje WelcomeApplet- har massor ( 200st) meotder ärvda från klassen JApplet, bl a också en ärvd tom -metod. Men den är omdefinierad i WecomeApplet-. Eftersom den omdefinierade metoden är den enda som vi skall användas har jag bara ritat ut den. java awt Graphics.class Så här ser det ut när skapat WelcomeApplet-et (en instans av klassen WelcomeApplet). Metoden har anropats (med tillgång till ett Graphics- som referas med g), som i sin tur anropat i Graphics-et.

lokala print g WelcomeApplet Graphics- refererat av g "Welcome to.." String- inenhet utenhet Parmetrar fungerar på likande sätt som lokala, dvs de finns för som anropats men ännu ej kört klart. Parametrar får dock sitt ursprungsvärde (initialvärde) av den anropande metoden. 1234567890+ qwertyuiopå asdfghjklöä <zxcvbnm,.- Welcome to..! Paint-metodens parameter g får sitt värde, referensen till Graphics-et, av viewrns metod. g-ets metoden Stringparameter får stitt värde, Stringet "med texten "Welcome to.." vid detta anrop i : g.("welcome to..

Semantiken för programmet AdditionApplet Så här ser det ut när AdditonApplet-et just skall göra satsen (kommandot) sum = number1 + number2; lokala init firstnumber secondnumber 45.5 number1 number2 72.37 sum "45.5" "72.37" 0.0 init AdditiomApplet Och så här ser det ut när har anropat g.: lokala sum 117.87 init AdditiomApplet g Graphics- refererat av g "The sum is...." String-