0HURP'DOJRULWPHU-DYDOD\RXW GXEEHOEXIIULQJPP ) UHOlVQLQJ. ,QQHKnOO
|
|
- Sofia Jakobsson
- för 7 år sedan
- Visningar:
Transkript
1 0HURP'DOJRULWPHU-DYDOD\RXW GXEEHOEXIIULQJPP ) UHOVQLQJ,QQHKnOO ²0HURP'DOJRULWPHU ²-DYDPHURPNRPSRQHQWHUOD\RXWGXEEHOEXIIULQJ PP.RRUGLQDWV\VWHPRFKNRRUGLQDWHU 9DQOLJHQMREEDUYLL&DUWHVLVNDNRRUGLQDWHU ² 9LVVDÃV\VWHPÃKDUÃRULJRÃQHUHÃWLOOÃYQVWHU ² DQGUDÃXSSHÃWLOOÃYQVWHU 9UOVGNRRUGLQDWHU ² buãgrpãnrruglqdwhuãylãdqyqghuãlãynudãdssolndwlrqhu ² +UÃEU\UÃYLÃLQWHÃRVVÃRPÃKXUÃYLONDÃSL[ODUÃSnÃVNUPHQÃVRPÃNRPPHU UHSUHVHQWHUDÃGHP 6NUPNRRUGLQDWHUHQKHWVNRRUGLQDWHU ² 'HÃNRRUGLQDWHUÃVRPÃYHUNOLJHQÃUHSUHVHQWHUDUÃSXQNWHUÃSnÃVNUPHQ HQKHWHQ 1RUPDOLVHUDGHNRRUGLQDWHU ² 2IWDÃQRUPDOLVHUDVÃNRRUGLQDWHUQDÃYLGÃ YHUVWWQLQJÃIUnQ YUOGVNRRUGLQDWHUÃLQQDQÃXWULWQLQJÃÃVNHU ² 1RUPDOLVHUDGHÃNRRUGLQDWHUÃGYVÃNRRUGLQDWHUÃWLOOK UDQGHÃ>Ã@ ² 'HWWDÃJ UÃDWWÃYLVVDÃWUDQVIRUPDWLRQHUÃNDQÃVNHÃREHURHQGHÃDYÃXWHQKHW %M UQ(LGHUEFN 1
2 ) QVWHURFKY\HU (WWI QVWHULI QVWHUKDQWHUDUPHQLQJEUXNDU RIWDGHODVLQLGHOY\HUYLHZSRUWV,YDUMHYLHZSRUWMREEDUPDQPHGHWWORNDOW NRRUGLQDWV\VWHPI QVWUHWKDURFNVnHWW NRRUGLQDWV\WHP - 3-9LVXDOLVHULQJVSLSHOLQH Konstruera scen i värdskoordinater Normaisera vykoordinaterna Modeering Översätt ti utritnings-koord Normaisera Vykoordinater Översätt värdskoordinater utritningskoordinatsystem (tex genom att ba vrida värskoordinatsystemet) Översätt ti respektive vys koordinater %M UQ(LGHUEFN 2
3 «PHUJHQHUHOOW Konstruera grafiska modeer och programmera Omvanda objekten ti pixevärden Modeering Geometr. transf. Rastrering Visuaisering Vika objekt finns på skärmen, hur färgas och skuggas dom normaisera, kipp, ta bort skymda injer, skugga Rita ut, ta eventuet bort taggighet (antiaiasing) OLSSQLQJ 'npdqnrqvwuxhuduhwwi QVWHUDWWULWDL EUXNDUHOOHUNDQPDQRFNVnDQJH NOLSSUHNWDQJODU ² 'YVDQJHGRPRPUnGHQGUREMHNWHQVNDOOV\QDV 2EMHNWXWDQI UHOOHUGHOYLVXWDQI UµNOLSSVµPRWRPUnGHW %M UQ(LGHUEFN 3
4 .OLSSRSHUDWLRQHU 9LEHK YHUNOLSSDERUWRPUnGHQVRPUXWDQI U HQYLVVWI QVWHU ² (OOHULEODQGPHUJHQHUHOODRPUnGHQ 2OLNDW\SHUDYNOLSSDOJRULWPHU ² 3XQNWNOLSSQLQJ ² /LQMHNOLSSQLQJ ² <WNOLSSQLQJ ².XUYNOLSSQLQJ ² 7H[WNOLSSQLQJ OLSSQLQJDYOLQMHVHJPHQWL' (QNOLSSDOJRULWPDYJ UYLONDSULPLWLYHUHOOHU GHODUDYGHPVRPVNDOOULWDVSnVNUPHQ %M UQ(LGHUEFN 4
5 &RKHQ6XWKHUODQG 9LGHODULQVNUPHQLRPUnGHQNULQJHWWUHNWDQJXOUWI QVWHU 6QDEEDUXSSEHKDQGOLQJHQDYOLQMHVHJPHQWJHQRPDWWLQLWLDOW UHGXFHUDDQWDOHWVNUQLQJDUVRPPnVWHEHUNQDV 'HQI UVWDDOJRULWPHQVRPI UV NWHHUVWWDNRVWVDPPD PXOWLSOLNDWLRQHURFKGLYLVLRQHUPHGHQNRPELQDWLRQDY IO\WWDOVVXEWUDNWLRQRFKELWRSHUDWLRQHU 'HODXSSI QVWUHWLQLRRPUnGHQPLWWHUVWDI QVWUHWGHWLQUHDY NOLSSUHNWDQJHOQ 9DUMHWLOOGHODVXQLNELWDUVVHNYHQV ² UHVSHNWLYHÃELWÃVWnUÃI U 1001 över, under, höger, vänster DOJRULWPVNLVV *LYHWc1 = kod(p1)rfkc2 = kod(p2)gup1rfkp2 SXQNWHU c1 = c2 = 0 EnGDÃSXQNWHUQDÃLQQDQI UÃPLWWHUVWDÃI QVWUHW c1 0RFKc2 = 0HOOHUYLFHYHUVD HQÃSXQNWÃLQQHÃHQÃXWHÃNRGHQÃLQGLNHUDUÃYLONHQÃGHOÃVRPÃUÃXWDQI UÃRFK YLONHQÃVRPÃUÃLQQDQI U EHUNQDÃVNUQLQJÃRFKÃJ UÃRPÃPHGÃQ\ÃNRG c1 && c2 0ELWYLVWORJLVNWRFK EnGDÃSXQNWHUQDÃOLJJHUõSnÃVDPPDÃVLGDµ c1 && c2 = 0 EnGDÃSXQNWHUQDÃXWDQI UÃPHQÃSnÃROLNDÃVLGRU NROODÃVNUQLQJÃEHUNQDÃQ\ÃNRGÃRFKÃJ UÃRP %M UQ(LGHUEFN 5
6 /LDQJ%DUVN\ 0HG&RKHQ6XWKHUODQGEHK YHUYLVSHFLDOEHKDQGOD YHUWLNDODOLQMHUSnIRUPHQy = mx + h /LDQJ%DUVN\XQGYLNHUSUREOHPHWJHQRPDWWDQYQGD SDUDPHWHUIRUPI UOLQMHUQDLVWOOHW p( α ) (1 α ) p + α = 1 8GHUV NαYUGHQLVNUQLQJDUPHGNOLSS\WDQ α1 α2 α3 α4 α α3 p 2 α2 α4 XUVDPEDQGHQ x y w w min min x α x x NDQWH[αI UNOLSSQLQJPRW\ PD[ InVXU y w y max 1 α = y OLNDGDQDHNYDWLRQHUNDQInVIUnQGRPWUHDQGUD NDQWHUQD w y + α y y max w max 0 α 1 %M UQ(LGHUEFN 6
7 Viket medför att det hea kan skrivas αp p p p p k q k, = x, = x, = y, = y, k = 1,2,3,4 q q q 1 q = x 1 = x = = y y 1 x w w max y max w min x w 1 min y 1 och för varje p k skijt från no α = q p k k ([HPSHO %M UQ(LGHUEFN 7
8 .OLSSQLQJPRWLFNHUHNWDQJXOUDI QVWHU %ngh/ldqj%duvn\vrfk&\uxv%hfnvdojrulwphu NDQHQNHOWXWYLGJDVWLOONOLSSQLQJPRWJHQHUHOOD NRQYH[DSRO\JRQHU ) UGHWWDQGDPnONDQNRQNDYDSRO\JRQHUYLG EHKRYRPYDQGODVWLOONRQYH[D &LUNODURFKDQGUDILJXUHUEHVNULYQDDYNXUYRUU P MOLJDPHQIRUGUDUIOHUEHUNQLQJDU PYDQGOLQJDYNRQNDYDWLOONRQYH[DSRO\JRQHU V 6 E 6 E 1 V 1 V 2 E 5 V 5 E 2 E 4 V 3 E3 V4 Ta kryssprodukter för aa intiiggande kanter Om aa kanter har samma tecken så är poygonen konvex annars konkav (E 1 E 2 ) > 0 (E 2 E 3 ) < 0 (E 3 E 4 ) > 0 (E 4 E 5 ) > 0 (E 5 E 6 ) > 0 (E 6 E 1 ) > 0 Oika tecken atså konkav För att göra poygonen konvex spittar vi ängs första kanten som ger E 6 negativt tecken och vi får två poygoner E 1 V 1 V V 6 E 5 E 2 V 3 E3 V 5 E 4 V4 %M UQ(LGHUEFN 8
9 .OLSSQLQJDYSRO\JRQHU.OLSSPRWNDQWLNOLSSUHNWDQJHOQLWDJHW XWKHUODQG+RGJHPDQ Föj kanterna på poygonen och kipp mot en kant i taget V 1 V 1 V 2 V 2 V 2 V 1 ut in spara V 1, V 2 V 3 in in spara V 3 V 4 V 3 V 3 in ut spara V 3 Förbättring: Vi kan eiminera vertexista genom att skicka vidare varje kant ti nästa "kippare" V 4 ut ut spara ingen %M UQ(LGHUEFN 9
10 SUREOHP Kippning av konkava poygoner kan ge sammanhängande kanter som inte finns :HLOHU$WKHUWRQ En ösning på föregående probem är att använda Weier-Athertons agoritm. om man går från en punkt utanför kipprektangen ti en innanför föjer man poygonkanten men föjer fönsterkanten medurs om man går innefrån och ut V 3 V 1 V 1 V 4 V 3 V 2 V %M UQ(LGHUEFN 10
11 $QGUDW\SHUDYREMHNW $QYQGI UVWRPVOXWDQGHUHNWDQJHOHOOHU XWVWUFNQLQJJHQHUHOOUHJHO.OLSSQLQJLIUDPHEXIIHUWHQ ² 2IWDVWEWWUHDWWNOLSSDLQQDQREMHNWHQLIUDPHEXIIHUWHQ ² EHK YVYDQOLJHQEDUDI UREMHNWDYW\SUDVWHU /D\RXW LayoutManager BorderLayout GridBagLayout GridLayout CardLayout FowLayout %M UQ(LGHUEFN 11
12 )ORZ/D\RXW ² UÃGHIDXOWÃI UÃ3DQHOREMHNW ² SODFHUDUÃNRPSRQHQWHUÃIUnQÃYQVWHUÃWLOOÃK JHUÃ9LGÃIXOOÃUDGÃVnÃQ\ÃUDG *ULG/D\RXW ² VHUÃWLOOÃDWWÃDOODÃNRPSRQHQWHUÃKDUÃVDPPDÃVWRUOHNÃ5XWQWÃUDGÃNROXPQ %RUGHU/D\RXW ² UÃGHIDXOWÃI UÃ:LQGRZNODVVHUÃH[Ã)UDPHÃRFKÃ'LDORJ ² 3ODFHUDUÃNRPSRQHQWHUÃLõYGHUVWUFNµ &DUG/D\RXW ² 3ODFHUDUÃREMHNWHQÃLÃHQõNRUWOHNµÃGUÃHQGDVWÃHWWÃNRUWÃLÃWDJHWÃV\QOLNW *ULG%DJ/D\RXW ² 0HVWÃJHQHUHOOÃRFKÃNRPSOH[Ã'HODUÃLQÃ\WDQÃLÃIOHUDÃFHOOHU ² $QYQGHUÃUHVWULNWLRQHUÃHQJÃFRQVWUDLQWVÃI UÃDWWÃEHVNULYD KXUÃNRPSRQHQWHUÃSODFHUDVÃVDPWÃGHUDVÃXWVWUFNQLQJ ([HPSHO)ORZOD\RXW import java.awt.*; import java.appet.*; pubic cass DemoFowayout extends Appet { Button buttons[]; pubic void init() { super.init(); setlayout(new FowLayout()); buttons = new Button[10]; for (int i = 0; i < 10; i++) { buttons[i] = new Button("Knapp " + i); add(buttons[i]); %M UQ(LGHUEFN 12
13 /D\RXWHQµI OMHUPHGµI UQGULQJDUDY I QVWHUVWRUOHN ([HPSHO*ULGDO\RXW import java.awt.*; import java.appet.*; pubic cass DemoGridayout extends Appet { Button buttons[]; pubic void init() { super.init(); setlayout(new GridLayout(5, 2)); buttons = new Button[10]; for (int i = 0; i < 10; i++) { buttons[i] = new Button("Knapp " + i); add(buttons[i]); %M UQ(LGHUEFN 13
14 ([HPSHO%RUGHUOD\RXW import java.awt.*; import java.appet.*; pubic cass DemoBorderayout extends Appet { pubic void init() { super.init(); resize(300, 400); setlayout(new BorderLayout()); add("north", new Button("Knapp " + "Norr"));; add("south", new Button("Knapp " + "Söder"));; add("east", new Button("Knapp " + "Öster"));; add("west", new Button("Knapp " + "Väster"));; add("center", new Button("Knapp " + "Centrum"));; HWRGHUI UDWWKDQWHUDNRPSRQHQWHU I UXWRPOD\RXWNDQNRPSRQHQWHURFNVnEOD ² YLVDVHOOHUG OMDV VHW9LVLEOHERROHDQ ² J UDVDNWLYDHOOHUSDVVLYD VHW(QDEOHGERROHDQ ² RPULWDVULWDVHOOHUPDUNHUDVVRP NRUUXSWDµ UHSDLQWÃSDLQW*UDSKLFVÃLQYDOLGDWH ² OD\RXWNDQDQJHVI UFRQWDLQHUEDVHUDGH ² I QVWHUNDQYLVDVOJJDVLI UHOOHUEDNJUXQGHQWLWHONDQDQJHV PP VKRZÃWR)URQWÃWR%DFN ² FXUVRUNDQQGUDV ² VWRUOHNNDQJHVWQNSnOD\RXWQXOO ² %M UQ(LGHUEFN 14
15 %ODQGDWH[HPSHO import java.awt.*; import java.awt.event.*; pubic cass TestOfFrame extends Frame { pubic TestOfFrame(String s) { super(s); protected void deay(int ms) { // Vi måste ta hand om exceptions, viket görs med ett try-catch-par try{ Thread.currentThread().seep(ms); catch(exception e) { protected void testlayoutes() { /* Lite urartat visar vi hur man kan fråga om komponenter. I det här faet vet vi att det är en Container och "kastar" */ Container pane = (Container) this.getcomponents()[0]; int deaytime = 3000; deay(deaytime); pane.setlayout(new GridLayout(5, 4, 10, 20)); this.settite("gridayout"); this.vaidate(); deay(deaytime); pane.setlayout(new FowLayout(FowLayout.LEFT, 7, 7)); this.settite("fowayout"); this.vaidate(); %M UQ(LGHUEFN 15
16 Component[] panecomponents = pane.getcomponents(); for (int i = 0; i < panecomponents.ength; i++) { Component component = panecomponents[i]; component.setbounds((i % 5) * 40, i * 25, 50, 20); deay(deaytime); pane.setlayout(nu); this.settite("nu ayout"); this.vaidate(); pubic static void main(string args []){ TestOfFrame frame = new TestOfFrame("Test of frame ayout"); Pane pane; frame.addwindowlistener(new WindowAdapter(){ pubic void windowcosing(windowevent e) { System.exit(0); ); frame.setsize(200, 300); frame.show(); // Vi skapar en pane för att automatiskt få objekten utpacerade med pane = new Pane(); frame.add(pane); %M UQ(LGHUEFN 16
17 //Vi skapar några knappar for (int i = 0; i < 10; i++) { Button button = new Button("Button-" + new Integer(i).toString()); pane.add(button); // Aa knappar får bi "stängknappar" button.addactionlistener(new ActionListener() { pubic void actionperformed(actionevent e) {System.exit(0); ); /* För att ett nytt objekt ska visas på skärmen måste vi göra vaidate på framen (repaint eer invaidate hjäper inte! Bug??) */ frame.vaidate(); /* Vi skue ju kunna göra vaidate efter singan och visa aa nya knappar på en gång förstås! */ //Vi skapar några fät for (int i = 0; i < 10; i++) { TextFied fied = new TextFied("Fied-" + new Integer(i).toString()); pane.add(fied); // Den här gången gör vi "det" efter singan frame.vaidate(); // Nu testar vi att ändra ayouten frame.testlayoutes(); %M UQ(LGHUEFN 17
18 ([HPSHO6WXGVDQGHEROODU import java.appet.*; import java.awt.*; /** An appet that dispays a simpe animation */ pubic cass BouncingCirce extends Appet impements Animation { int x = 150, y = 50, r=50; // position and radius of the circe int dx = 11, dy = 7; // trajectory of circe /** A timer for animation: ca our animate() method every 100 miiseconds. Creates a new thread. */ AnimationTimer timer = new AnimationTimer(this, 100); /** Draw the circe at its current position */ pubic void paint(graphics g) { g.setcoor(coor.red); g.fiova(x-r, y-r, r*2, r*2); /** Move and bounce the circe and request a redraw. * The timer cas this method periodicay. */ pubic void animate() { // Bounce if we ve hit an edge. if ((x - r + dx < 0) (x + r + dx > bounds().width)) dx = -dx; if ((y - r + dy < 0) (y + r + dy > bounds().height)) dy = -dy; %M UQ(LGHUEFN 18
19 // Move the circe. x += dx; y += dy; // Ask the browser to ca our paint() method to draw the circe at its new position. repaint(); /** Start the timer when the browser starts the appet */ pubic void start() { timer.start_animation(); /** Pause the timer when browser pauses the appet */ pubic void stop() { timer.pause_animation(); /** This interface for objects that can be animated by an AnimationTimer */ interface Animation { pubic void animate(); /** The thread cass that periodicay cas the animate() method */ cass AnimationTimer extends Thread { Animation animation; // The animation object we re serving as timer for int deay; // How many miiseconds between "animation frames" pubic AnimationTimer(Animation animation, int deay) { this.animation = animation; this.deay = deay; %M UQ(LGHUEFN 19
20 pubic void start_animation() { if (isaive()) super.resume(); ese start(); pubic void pause_animation() { suspend(); /** Loop forever, caing animate(), and then pausing the specified time. */ pubic void run() { for(;;) { animation.animate(); try { Thread.seep(deay); catch (InterruptedException e) { ; ([HPSHO6WXGVDQGHEROODUPHGGXEEHOEXIIULQJ import java.appet.*; import java.awt.*; /* An appet that dispays a simpe animation using doubebuffering and cipping */ pubic cass SmoothCirce extends Appet impements Runnabe { int x = 150, y = 100, r=50; // Position and radius of the circe int dx = 8, dy = 5; // Trajectory of circe Dimension size; // The size of the appet Image buffer; // The off-screen image for doube-buffering Graphics buffergraphics; // A Graphics object for the buffer Thread animator; // Thread that performs the animation booean pease_stop; // A fag asking animation thread to stop %M UQ(LGHUEFN 20
21 /** Set up an off-screen Image for doube-buffering */ pubic void init() { size = this.size(); buffer = this.createimage(size.width, size.height); buffergraphics = buffer.getgraphics(); /** Draw the circe at its current position, using doubebuffering */ pubic void paint(graphics g) { // Draw into the off-screen buffer. buffergraphics.setcip(g.getcip()); // cear the buffer buffergraphics.setcoor(this.getbackground()); buffergraphics.firect(0, 0, size.width, size.height); buffergraphics.setcoor(coor.red); // draw the circe buffergraphics.fiova(x-r, y-r, r*2, r*2); // Then copy the off-screen buffer onto the screen g.drawimage(buffer, 0, 0, this); %M UQ(LGHUEFN 21
22 /** Don t cear the screen; just ca paint() immediatey * It is important to override this method ike this for doube-buffering */ pubic void update(graphics g) { paint(g); /** The body of the animation thread */ pubic void run() { whie(!pease_stop) { // Bounce the circe if we ve hit an edge. if ((x - r + dx < 0) (x + r + dx > size.width)) dx = -dx; if ((y - r + dy < 0) (y + r + dy > size.height)) dy = -dy; // Move the circe. x += dx; y += dy; /* Ask the browser to ca our paint() method to redraw the circe at its new position. Te repaint what portion of the appet needs be redrawn: the rectange containing the od circe and the the rectange containing the new circe. These two redraw requests wi be merged into a singe ca to paint() */ // repaint od position of circe repaint(x-r-dx, y-r-dy, 2*r, 2*r); // repaint new position of circe repaint(x-r, y-r, 2*r, 2*r); // Now pause 1/10th of a second before drawing the circe again. try { Thread.seep(100); catch (InterruptedException e) { ; animator = nu; %M UQ(LGHUEFN 22
23 ÃÃ/** Start the animation thread */ pubic void start() { if (animator == nu) { pease_stop = fase; animator = new Thread(this); animator.start(); /** Stop the animation thread */ pubic void stop() { pease_stop = true; /** Aow the user to start and stop the animation by cicking, Java 1.0 */ pubic booean mousedown(event e, int x, int y) { if (animator!= nu) pease_stop = true; ese start(); return true; %M UQ(LGHUEFN 23
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 2001 - maj - 19 Tentamen i Objektorientering och Java Skrivtid 5 h
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 2001 - maj - 19 Tentamen i Objektorientering och Java Skrivtid 5 h Antalet uppgifter : 2 (20p + 20p = 40 p) ) Lärare, jourhavande lärare :
Vad är ett Framework? 2203$ ) UHOlVQLQJ. Hollywood. Frameworks (FW) Frameworks. Konstruktion av fönster, gränssnitt och användning av grafik i Java
2203$ ) UHOlVQLQJ Frameworks. Konstruktion av fönster, gränssnitt och användning av grafik i Java Innehåll, kort om: Frameworks Grafik med främst AWT Grafiska interaktiva applikationer Händelsehantering
Denna vecka. Idag. Grafiskt användarsnitt. Vi kommer att se
1 F18-20-2006 Denna vecka Måndag: Ett komplext problem Tisdag: Lektion. Kväll: Essäfrågan distribueras via webben. Dead-line onsdag 17 maj, kl 12.00. Inlämning elektroniskt och på papper. Onsdag: Grafik
Java-concept och Swing. Swing low, sweet chariot
Java-concept och Swing Swing low, sweet chariot Javas Swing-API En del av Javas standard-api API - application programming interface Ett klassbibiliotek som följer med Java Är designat med många OO-concept
Dagens program. Programmeringsteknik och Matlab. Vad är arv? Vi ärver från GregorianCalendar. Kan vi bygga vidare på existerande klasser?
Programmeringsteknik och Matlab Övning 6 Dagens program Övningsgrupp 2 (Sal Q22/E32) Johannes Hjorth hjorth@nada.kth.se Rum 4538 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d1312
Detta dokument är ett exempel, cirka andra hälften av en tentamen för TDA545 Objektorienterad programvaruutveckling
Detta dokument är ett exempel, cirka andra hälften av en tentamen för TDA545 Objektorienterad programvaruutveckling Fulltentamen vitsord: 3=28p, 4=38p, 5= 48p, max 60p. Max 30p i denna halvtentamen Hjälpmedel:
DI-institutionen Sid 1 av 5 Hans-Edy Mårtensson Sten Sundin Micael Karlsson
DI-institutionen Sid 1 av 5 Hans-Edy Mårtensson Sten Sundin Micael Karlsson Lösningar till TENTAMEN I IXC003 SYSTEMUTVECKLING MED INTERNET/INTRANET, del 1 (5p) för IT3 och INTERNETPROGRAMMERING MED JAVA
DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin
DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin TENTAMEN I IKB007 INTERNETPROGRAMMERING MED JAVA för SY2 1999-03-17, kl 14.00-18.00 Hjälpmedel: En lärobok i Java programmering Återlämningstillfälle:
Grafiska komponenter.
Grafiska komponenter. Kap J5-1 Grafiska användargränssnitt är det moderna alternativet till traditionell terminal-i/o. GUI-programmering bygger på en händelsestyrd flödeskontroll. I Java utförs GUI-programmeringen
Föreläsnings 11 - GUI, Händelsestyrda program, MVC
Föreläsnings 11 - GUI, Händelsestyrda program, MVC Josef Svenningsson Tisdag 20/11 Boken Denna föreläsning går igenom följande sektioner i boken: 10.1 och 10.2 11.1 Notera att kapitel 11 inte finns i boken
Recitation 4. 2-D arrays. Exceptions
Recitation 4. 2-D arrays. Exceptions Animal[] v= new Animal[3]; 2 declaration of array v Create array of 3 elements v null a6 Assign value of new-exp to v Assign and refer to elements as usual: v[0]= new
5 Användargränssnitt. 5.1 AWT och Swing
5 Användargränssnitt 5.1 AWT och Swing AWT (Abstract Windowing Toolkit) är ett omfattande klassbibliotek för hantering av användargränssnitt i Java. Det är gjort så att applikationerna blir helt plattformsoberoende
Fortsättningskurs i programmering F 5. GUI händelsehantering - undantagshantering Hugo Quisbert 20130205 AWT. Paket för hantering av grafik
Fortsättningskurs i programmering F 5 GUI händelsehantering - undantagshantering Hugo Quisbert 20130205 1 Abstract Window Toolkit Paket för hantering av grafik dvs skapa grafisk användargränssnitt java.awt
Programmeringsteknik II - HT18. Föreläsning 6: Grafik och händelsestyrda program med användargränssnitt (och Java-interface) Johan Öfverstedt
Programmeringsteknik II - HT18 Föreläsning 6: Grafik och händelsestyrda program med användargränssnitt (och Java-interface) Johan Öfverstedt 18-09-28 1 Förra gången: Arv och klasshierarkier Vi såg hur
Mer om grafiska komponenter. Händelsestyrda program
Layout Managers TDA143 I1 Programmerade system Föreläsning 14 (OH-bilder 10) Mer om grafiska komponenter. Händelsestyrda program Utplaceringen av komponenter i en behållare styrs med en Layout Manager.
SMD091 Lektion 9. Definition. Inkapsling. Lite repetition. Grafik. Gränssnitt Definition och Implementation. Sammansättning... Implementation.
SMD091 Lektion 9 Inkapsling Lite repetition Grafik 1 2 Gränssnitt Definition och Implementation Sammansättning... Definition...är ofta det bästa sättet att använda funktionalitet i andra klasser. Ratt
Föreläsning 8. Designmönster
Föreläsning 8 Designmönster Designmönster När man designar program kan det vara viktigt att förstå hur man tidigare gått till väga när man konstruerat program. Kännedom om dessa tillvägagångssätt kan snabba
Scratch Junior. makeandshape.com. by MIT. Gränssnitt Scratch Junior
Scratch Junior by MIT Gränssnitt Scratch Junior 1. Spara 2. Scen 3. Presentationsläge (fullskärm) 4. Rutnät 5. Byt bakgrund 6. Lägg till text 7. Återställ figur (till sin ursprungliga position) 8. Grön
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 2001 - aug - 23 Tentamen i Objektorientering och Java Skrivtid 5 h
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 2001 - aug - 23 Tentamen i Objektorientering och Java Skrivtid 5 h Antalet uppgifter : 3 (15p + 20p + 5p = 40 p) Lärare, jourhavande lärare
Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 18
Grundläggande programmering, STS 1, VT 2007. Sven Sandberg Föreläsning 18 Igår: Genomgång av dugga Rekursion Idag och på måndag: Om essän Lite, lite teori om konstanter Grafiska användargränssnitt Grundläggande
Lösningsförslag till tentamen
Uppgift 1 a) Sant. b) Sant. c) Sant. Lösningsförslag till tentamen 170818 d) Falskt. IPv6 anger en IP-adress med 132 bitar. e) Falskt. Spoofing åsyftar användning av förfalskad eller lånad identitet på
Modelsvar för Tentamen för Objektorienterad programvaruutveckling, TDA545
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Magnus Myréen Modelsvar för Tentamen för Objektorienterad programvaruutveckling,
Support Manual HoistLocatel Electronic Locks
Support Manual HoistLocatel Electronic Locks 1. S70, Create a Terminating Card for Cards Terminating Card 2. Select the card you want to block, look among Card No. Then click on the single arrow pointing
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3 Laboration 3 Visualisering (och implementering) av sortering Exempel på grafik (med Swing-paketet) Frågor 1 Laboration 3 Visualisering
Lab5 för prgmedcl04 Grafik
Lab5 för prgmedcl04 Grafik Viktigt läs detta först:den här labblydelsen är ganska lång, detta betyder inte att labben tar lång tid.en hel del av lydelsen är anvisning om hur man går tillväga för att kunna
Swing. MER Java Foundation Classes (JFC) Hur lära sig? Vad är farorna. LayoutManagers. Exempel på några av komponenterna
MER Java Foundation Classes (JFC) Swing Swing Många klasser Vettigt att lära sig dem utantill - Tror inte det -... men det kan vara bra att ha en liten överblick över vad som finns - Idag (och med fortsättning
Frames, menyer och GUI-program
15 Frames, menyer och GUI-program Frames En frame-klass Om konstruktorer - igen Funktionella fönster Menyer Popupmenyer GUI-applikationer Dialogrutor Printerutskrift Kap 15: Sid 2 Frames Redan i kapitel
Föreläsning 10. Mer om grafiska komponenter Händelsestyrda program. Layout Managers
Föreläsning 10 Mer om grafiska komponenter Händelsestyrda program Layout Managers Utplaceringen av komponenter i en behållare styrs med en layout manager. Det finns olika layout managers: FlowLayout GridLayout
Föreläsning 12. Föreläsning 12. Rörliga figurer Klassen Timer Undantag Något om applets. Rörliga appletsfigurer Klassen Timer Undantag
Föreläsning 12 Föreläsning 12 Rörliga figurer Klassen Timer Undantag Något om applets Rörliga appletsfigurer Klassen Timer Undantag Något om applets Klassen javax.swing.timer I Swing finns en klass Timer
Parallellism, återblick
Parallellism, återblick Josef Svenningsson December 11, 2012 Lab7 Det är problem med lab7. Gå med i den grupp som ni använt tidigare. DEMO Flera saker händer samtidigt Ofta hanterar program olika indata
Swing. MER Java Foundation Classes (JFC) Vad är farorna. Hur lära sig? LayoutManagers. Exempel på några av komponenterna
MER Java Foundation Classes (JFC) Swing Swing Många klasser" Vettigt att lära sig dem utantill" - Tror inte det" -... men det kan vara bra att ha en liten överblick över vad som finns" - Idag (och med
Lösningar för tenta 3 DAT043,
Lösningar för tenta 3 DAT043, 2018-08-22. Uppgift 1 class Person{ public String förnamn; public String efternamn; public int ålder; private double längd; private double vikt; public Person(String förnamn,
Föreläsning 10. Mer om grafiska komponenter Händelsestyrda program. Layout Managers. Exempel: FlowLayout. Klassen FlowLayout
Layout Managers Föreläsning 10 Mer om grafiska komponenter Händelsestyrda program Föreläsn Utplaceringen av komponenter i en behållare styrs med en layout manager. Det finns olika layout managers: FlowLayout
Lösningsförslag till tentamen
till tentamen 1 (5) Kurs Objektorienterad programmering Kursbeteckning DAT042 Program D2, TKDAT Läsår 2012/2013, lp 1 Examinator Uno Holmer Uppgift 1 (10 p) Ingen lösning ges. Se kurslitteraturen. Uppgift
Föreläsningar nov 19, nov 20 v 47.
Föreläsningar nov 19, nov 20 v 47. Trådar, Undantag, DFA mm. Att göra ett dator-femtonspel. Ett "klick"-styrt grafiskt femtonspel som dessutom ändrar sig själv. I "vickspelet" vill vi att datorn med jämna
Tentamen ITK:P2. Inga hjälpmedel tillåtna förutom penna och papper. Skriv tydligt och texta gärna. 14 st frågor, 70 poäng.
Tentamen ITK:P2 lördag 2007-04-14 Inga hjälpmedel tillåtna förutom penna och papper. Skriv tydligt och texta gärna. 14 st frågor, 70 poäng. 40 poäng ger betyget G, 55 ger VG Peter Mozelius DSV 1.) Ditt
Frivillig Java-swing-Graphics-lab Programmeringsteknik MN1 vt02
Frivillig Java-swing-Graphics-lab Programmeringsteknik MN1 vt02 Denna laboration är frivillig och syftar till att låta dig lära mer om grafik i java. Labben är ganska grundlig och går igenom vad du skall
Lösningsförslag till tentamen FYTA11 Javaprogrammering
Lunds universitet FYTA11 Institutionen för Teoretisk Fysik HT 08 Lösningsförslag till tentamen FYTA11 Javaprogrammering Fredag 9:e januari 2009, 09:00 13:00 Uppgift 1: Leta buggar Titta på klasserna A,
Malmö högskola 2007/2008 Teknik och samhälle
Laboration Gui Avsikten med denna laboration är att du ska träna på att bygga grafiska användargränssnitt. Spara dina resultat i paketet laborationgui. Längst bak i laborationen finns fullständiga lösningar
Rita Egna Bilder, Timer
Rita Egna Bilder, Timer Josef Svenningsson November 27, 2012 Grafik Varje gång ett fönster behöver ritas om, pga av att det flyttas eller varit övertäckt, anropas automatiskt en metod som har namnet paintcomponent.
Föreläsning 15 (16) Historik (java.awt) Historik (javax.swing) Introduktion till Swing
Föreläsning 15 (16) Introduktion till Swing Historik (java.awt) JDK 1.0 AWT (Abstract Window Toolkit) Paket för gränssnittsprogrammering Har en del nackdelar: Använder s.k. native code Stödjer endast komponenter
PROG2 Tenta 2013-06-07 Gäller SP:PROG2, DSK2:PROG2, FK:PROG2, FK:OOP, DSV1:P2 och ITK:P2
DSV SU/KTH sid 1 (6) PROG2 VT13 PROG2 Tenta 2013-06-07 Gäller SP:PROG2, DSK2:PROG2, FK:PROG2, FK:OOP, DSV1:P2 och ITK:P2 Tentan består av tre uppgifter. Max poäng är 38. För betyget E (godkänd) krävs minst
Tentamen FYTA11 Javaprogrammering
Lunds universitet FYTA11 Institutionen för Teoretisk fysik HT 10 Tentamen FYTA11 Javaprogrammering Måndag 10:e januari 2011, 09:00 13:00 Instruktioner Hjälpmedel: enkla ritverktyg och Javadoc-genererade
Två designmönster, MVC och Observer/Observable. Objektorienterad programvaruutveckling GU (DIT011)
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Innehåll Föreläsning 8 Två designmönster, MVC och Observer/Observable. Designrekommendation
FactoryCast HMI. Premium & Quantum PLC. Applets 2004-10-28
FactoryCast HMI Premium & Quantum PLC Applets 2004-10-28 INNEHÅLLSFÖRTECKNING 1 OM DETTA DOKUMENT...3 2 FÖRUTSÄTTNINGAR...3 3 PROJEKT I J++...4 3.1 LÄSA PLC-VARIABLER...4 3.1.1 Gränssnittet...4 3.1.2 Upprätta
Repetitionsföreläsning 2: Quiz & problemlösning med swing Inget nytt material.
TDA 545: Objektorienterad programmering Repetitionsföreläsning 2: Quiz & problemlösning med swing Inget nytt material. Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Idag En quiz! tinyurl.com/tda545quiz
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 00 - juni - 17 Tentamen i Objektorientering och Java Skrivtid 5 h
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 00 - juni - 17 Tentamen i Objektorientering och Java Skrivtid 5 h Antalet uppgifter : 4 (12p+8p+12p+8p = 40p) Lärare, jourhavande lärare :
Föreläsning 3: Händelsestyrda program och användargränssnitt
(2 september 2015 F3.1 ) Föreläsning 3: Händelsestyrda program och användargränssnitt Idag Från sekventiella till händelsestyrda program Lyssnare Kontroller Layout för ordning av kontroller (2 september
Lösningsförslag till tentamen
Uppgift 1 Lösningsförslag till tentamen 110317 a) Sant. b) Falskt. I ett RAM-minne är åtkomsttiden densamma för alla minnesadresser. c) Falskt. TCP är ett protokoll på transportlagret. d) Falskt. Binärsökning
Modellsvar för Tentamen för Objektorienterad programvaruutveckling, TDA545
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Magnus Myréen Modellsvar för Tentamen för Objektorienterad programvaruutveckling,
Efterhand fick vi ett system som vi tyckte var väl anpassat. Vi renskrev kladden (nedan) och började programmera menyerna.
Övning 3 - grupp 10 Övningen gick ut på att sortera givna funktionerna till ett ritprogram in i en meny. Den startsidan vi fick var blank och såg ut som nedan. I denna skulle vi skapa en meny med hjälp
ITK:P1 Lektion 4. Lektion 4. Lektion 4. Att implementera en spelidé i Java. DSV Peter Mozelius
ITK:P1 Att implementera en spelidé i Java DSV Peter Mozelius import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Lektion4 extends JFrame implements ActionListener { final int
Laboration 15 Grafiskt användargränssnitt
Laboration 15 Grafiskt användargränssnitt Avsikten med denna laboration är att du ska träna på att skriva program som använder grafiskt användargränssnitt, dvs program som använder grafiska komponenter
Modelsvar för Tentamen för Objektorienterad programvaruutveckling, TDA545
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Magnus Myréen Modelsvar för Tentamen för Objektorienterad programvaruutveckling,
ITK:P1 Föreläsning 4. Grafiska gränssnitt i Java. AWT-komponenter
ITK:P1 Föreläsning 4 Grafiska gränssnitt och händelsehantering 1 DSV Peter Mozelius Grafiska gränssnitt i Java Efterfrågan på program med grafiskt gränssnitt har ökat avsevärt de senaste åren I Java finns
2I1073 Lektion 2. Lektion 2a. Lektion 2a. Servlets, säkerhet, och filhantering. import java.io.*; import javax.servlet.*; import javax.servlet.http.
2I1073 Lektion 2 Servlets, säkerhet, och filhantering KTH-MI Peter Mozelius import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Lektion2a extends HttpServlet { public void
Ingenjörsfirman Stéen 2001-12-13 Java Sida 1 av 1
Java Sida 1 av 1 Java Mål och Syfte Målet med denna kurs i Java är att du direkt efteråt ska kunna börja utveckla dina första Javaapplikationer. Kursen ger dig många konkreta exempel på hur detta effektiva
Föreläsning 13: Swing (GUI), händelser, timer
TDA 545: Objektorienterad programmering Föreläsning 13: Swing (GUI), händelser, timer GUI = graphical user interface Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Idag Idag: grafiska gränssnitt; läs kap
Tentamen FYTA11 Javaprogrammering
Lunds universitet FYTA11 Institutionen för Teoretisk fysik HT 11 Tentamen FYTA11 Javaprogrammering Måndag 9:e januari 2012, 10:15 14:15 Instruktioner Hjälpmedel: enkla ritverktyg och Javadoc-genererade
Objektorienterad programmering i Java. Föreläsning 5 Kort om Java-Applets
Objektorienterad programmering i Java Föreläsning 5 Kort om Java-Applets 1 Läsanvisningar Den här föreläsningen syftar till att ge en bild av vad en Java-Applet är och är ganska fristående från föregående
lgammal2.txt // Lösningar till gammal tentamen // Uppgift 1 a
// Lösningar till gammal tentamen // Uppgift 1 a /* Felet beror på att det är klassen på referensen som avgör vilka metoder man får köra på ett objekt, inte klassen på objektet. På rad 5 i klassen C har
Arv och polymorfi. Lite terminologi; Basklass eller superklass: En klass som fungerar som bas för vårt arv. Vi skapar nya klasser utifrån den.
Arv och polymorfi Arv och polymorfi är två centrala begrepp i objektorientering. Arvsmekanismen innebär att vi kan skapa nya klasser utifrån redan existerande klasser. Man gör detta med hjälp av nyckelordet
TDDE10 m.fl. Objektorienterad programmering i Java Föreläsning 7 Erik Nilsson, Institutionen för Datavetenskap, LiU
TDDE10 m.fl. Objektorienterad programmering i Java Föreläsning 7 Erik Nilsson, Institutionen för Datavetenskap, LiU På denna föreläsning: Grafiskt användargränssnitt, Swing Layout och komponenter Göra
Concurrency Saker händer samtidigt. Process En instans av ett program
Concurrency Saker händer samtidigt Hur gör vi flera saker samtidigt på en dator? - Dela på en CPU - Flera CPU Flera processer på en dator. Operativsystemet (OS) tilldelar dem körtid (time slices, prioritet)
Tentamen FYTA11 Javaprogrammering
Lunds universitet FYTA11 Institutionen för Teoretisk Fysik HT 08 Tentamen FYTA11 Javaprogrammering Fredag 9:e januari 2009, 09:00 13:00 Instruktioner Inga hjälpmedel är tillåtna. Behandla högst en uppgift
Omtentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-17, TDA540. Dag: , Tid:
Omtentamen för TDA540 Objektorienterad Programmering Institutionen för Datavetenskap CTH HT-17, TDA540 Dag: 2018-08-30, Tid: 14.00-18.00 Ansvarig: Examinator: Alex Gerdes Carlo A. Furia Förfrågningar:
INSTALLATION INSTRUCTIONS
INSTALLATION - REEIVER INSTALLATION INSTRUTIONS RT0 RF WIRELESS ROOM THERMOSTAT AND REEIVER MOUNTING OF WALL MOUTING PLATE - Unscrew the screws under the - Pack contains... Installation - Receiver... Mounting
Objektorienterad Programkonstruktion. Föreläsning 2 2 nov 2016
Objektorienterad Programkonstruktion Föreläsning 2 2 nov 2016 Objekt - klass Namn Fält1 Fält2 Fält3 Metod1 Metod2 Metod3 Metod4 Objekt - klass Objekt - klass Objekt - klass + Objekt - klass public class
Att skriva till och läsa från terminalfönstret
Att skriva till och läsa från terminalfönstret Oftast används grafiska komponenter i Java för att kommunicera med användaren (användargränssnitt), men det finns objekt i standardbiblioteken för de tillfällen
2I1049 Föreläsning 8. Grafiska gränssnitt i Java. AWT-komponenter. Grafiska gränssnitt, Java interface och händelsehantering
2I1049 Föreläsning 8 Grafiska gränssnitt, Java interface och händelsehantering 1 KTH-MI Peter Mozelius Grafiska gränssnitt i Java Efterfrågan på program med grafiskt gränssnitt har ökat avsevärt de senaste
TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET
UMEÅ UNIVERSITET Datavetenskap 010824 TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET Datum : 010824 Tid : 9-15 Hjälpmedel : Inga Antal uppgifter : 7 Totalpoäng : 40 (halva poängtalet krävs normalt
Applets med komponenter
5 Applets med komponenter Knappar Om gränssnitt (interface) Händelser Måla om appletytan Etiketter och textrutor Förvandla strängar till tal Aritmetik Omvandla datatyper med cast Felhantering Kap 5: Sid
Grafik i DrRacket AV TOMMY KARLSSON
Grafik i DrRacket AV TOMMY KARLSSON Upplägg Grundläggande grafik i racket Frame% Kodexempel! Generella problemlösarstrategier Grafisk kodstruktur Button% Pane% & Panel% Canvas% Bitmap% Grafisk effektivisering
Exam Concurrent and Real-Time Programming
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenskap Exam Concurrent and Real-Time Programming 2018 08 23, 14.00 19.00 1. Vad är prioritetsinversion? Illustrera med ett enkelt exempel. Redogör
FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY , kl
Högskolan Dalarna sid 1 av 6 DI-institutionen Hans-Edy Mårtensson Sten Sundin FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY2 2001-03-16, kl 14.00-18.00 1. Grunderna i
DUGGA: Objektorienterade applikationer. Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad.
1 (8) DUGGA: Objektorienterade applikationer Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad. Skriv ditt namn, personnummer och e-postadress på försättsbladet. Skriv rent dina svar.
DAT043 Objektorienterad programmering för D, DIT011 Objektorienterad programvaruutveckling för GU
DAT043 Objektorienterad programmering för D, DIT011 Objektorienterad programvaruutveckling för GU lösningsförslag till tentamen 2017-06-09 Tid: 8:30-12:30. Plats: SB. Ansvarig lärare: Fredrik Lindblad,
Lösningar till Fiktiv Tentamen på kursen. 2D4135 Objektorienterad programmering, design och analys med Java vt2004. Teoridel
Lösningar till Fiktiv Tentamen på kursen 2D4135 Objektorienterad programmering, design och analys med Java vt2004 Teoridel T1) (4p) Förklara kort följande grundläggande begrepp inom objektorienterad programmering:
Lösningsförslag till tentamen
Uppgift 1 a) Falskt! Bitmönstret är 10010111 b) Falskt! Memory Manager handhar Lösningsförslag till tentamen 170609 c) Falskt. En trojansk häst är ett program i förklädnad. Det är således program som på
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3 Laboration 3 Visualisering (och implementering) av sortering Exempel på grafik (med Swing-paketet) Frågor 1 Laboration 3 Visualisering
Grafiskt användargränssnitt (GUI-Graphical User Interface) intro Komponenter
Grafiskt användargränssnitt (GUI-Graphical User Interface) intro Komponenter De komponenter som vi ska titta lite närmare på den här gången är paneler (JPanel), knappar (JButton), textfält (JTextField).
tentaplugg.nu av studenter för studenter
tentaplugg.nu av studenter för studenter Kurskod Kursnamn UU-76062 Inledande programmering i Java Datum 2014-07-13 Material Tentamen Kursexaminator Betygsgränser Tentamenspoäng G 30; VG 36 40 (VG) Övrig
LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p
UMEÅ UNIVERSITET Datavetenskap 010530 LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p Betygsgränser 3 21,5-27 4 27,5-33,5 5 34-43 Uppgift 1. (4p) Hitta de fel som finns i nedanstående klass (det
Föreläsning 9-10 Innehåll
Föreläsning 9-10 Innehåll Inläsning från textfil, utskrift från textfil Vektorer med objekt Matriser Datavetenskap (LTH) Föreläsning 9-10 HT 2018 1 / 41 Klassen Scanner Läsa från System.in Vi har tidigare
Objektorienterad programutveckling, fk
till tentamen P r e l i m i n ä r 1 (7) Kurs Objektorienterad programutveckling, fk Program DAI2 Läsår 2017/2018, lp 2 Examinator Uno Holmer Uppgift 1 (7 p) Abstrahera ut aktiviteten i ett gränssnitt Trainee
Modellsvar för Tentamen för Objektorienterad programvaruutveckling, TDA545
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Magnus Myréen Modellsvar för Tentamen för Objektorienterad programvaruutveckling,
Tentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-17, TDA540. Dag: , Tid:
Tentamen för TDA540 Objektorienterad Programmering Institutionen för Datavetenskap CTH HT-17, TDA540 Dag: 2018-01-13, Tid: 14.00-18.00 Ansvarig: Examinator: Alex Gerdes Carlo A. Furia Förfrågningar: Alex
Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.
Programmering med Java Programmering med Java Programspråket Java Källkodsexempel Källkod Java API-exempel In- och utmatning Grunderna Ann Pan panda@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 Game.java
Laboration 3 GUI-programmering
Laboration 3 GUI-programmering Syfte Erbjuder studenterna en möjlighet att lära sig grunderna i gränssnittsprogrammering i Java. Genomförande Genomförs individuellt eller i grupp om 2 personer. Uppskattad
Föreläsning 3. Stack
Föreläsning 3 Stack Föreläsning 3 ADT Stack Stack JCF Tillämpning Utvärdera ett postfix uttryck Stack implementerad med en array Stack implementerad med en länkad lista Evaluate postfix expressions Läsanvisningar
Trådar. Motivering. Många program måste kunna hålla på med flera saker samtidigt, till exempel. fleranvändarsystem.
Motivering Uppsala Universitet 21 april 2005 Många program måste kunna hålla på med flera saker samtidigt, till exempel fleranvändarsystem en webserver som måste kunna leverera flera websidor samtidigt
Lösningar till tentamen i EDAF25
Lösningar till tentamen i EDAF25 1 juni 2017 Lösning 1 Se figur 1. Figure 1: Tillståndsdiagram espressomaskin Lösning 2 (a) Kompositmönstret (b) Se figur 2 (c) Se figur 3 : Square : Drawing : Group : Circle
Tentamen FYTA11 Javaprogrammering
Lunds universitet FYTA11 Institutionen för Teoretisk fysik HT 11 Tentamen FYTA11 Javaprogrammering Fredag 26:e augusti 2011, 10:15 16:15 Instruktioner Hjälpmedel: enkla ritverktyg och Javadoc-genererade
endast har ett korrekt alternativ. Om
Objektorienterad programmering i Java Provmoment: Ladokkod: Tentamen ges för: Tentamen NOJ011-20132-A51H3- Systemarkitektprogrammet 7,5 högskolepoäng Tentamensdatum: 2014-01-08 Tid: 09:00 14:00 Hjälpmedel:
Föreläsning 3. Stack
Föreläsning 3 Stack Föreläsning 3 ADT Stack Stack JCF Tillämpning Utvärdera ett postfix uttryck Stack implementerad med en array Stack implementerad med en länkad lista ADT Stack Grundprinciper: En stack
Modellsvar för Tentamen för Objektorienterad programvaruutveckling, TDA545
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Magnus Myréen Modellsvar för Tentamen för Objektorienterad programvaruutveckling,
Vad kännetecknar en god klass. Vad kännetecknar en god klass. F12 Nested & Inner Classes
Vad kännetecknar en god klass F12 Nested & En odelad, väldefinierad abstraktion Uppgiften kan beskrivas kort och tydlig Namnet är en substantiv eller adjektiv som beskriver abstraktionen på ett adekvat
Lösningsförslag tentamen FYTA11 Java
Lunds universitet FYTA11 Institutionen för Teoretisk fysik HT 10 Lösningsförslag tentamen FYTA11 Java Måndag 10:e januari 2011, 09:00 13:00 Instruktioner Hjälpmedel: enkla ritverktyg och Javadoc-genererade
Svaret kan ges i Javakod (eller i UML-klassdiagram). public class A { B minb;... } public class B { <B:s många variabler och metoder> } Lösning:
Lös koppling mellan programdelar (klasser) eftersträvas ofta i objektorienterad programmering. Om klassen A beror av klassen B, hur kan man lösa upp detta beroende och åstadkomma en lösare koppling mellan