Institutionen för TENTAMEN CTH VT-16 Datavetenskap TDA550
|
|
- Daniel Håkansson
- för 9 år sedan
- Visningar:
Transkript
1 Institutionen för TENTAMEN CTH VT-16 Datavetenskap TDA550 Tentamen för TDA550 Objektorienterad programvaruutveckling IT, fk DAG: TID: 14:00 18:00 Ansvarig: Christer Carlsson, ankn 1038 Förfrågningar: Christer Carlsson Resultat: erhålls via Ladok Betygsgränser: 3:a 24 poäng 4:a 36 poäng 5:a 48 poäng maxpoäng 60 poäng Siffror inom parentes: Granskning: Hjälpmedel: Var vänlig och: Observera: anger maximal poäng på uppgiften. Tisdag 9/2 kl och tisdag 16/2 kl 12-13, rum 6128 i EDIT-huset. Inga hjälpmedel är tillåtna förutom bilagan till tesen. Skriv tydligt och disponera papperert på lämpligt sätt. Börja varje uppgift på nytt blad. Skriv ej på baksidan av papperet. Uppgifterna är ej ordnade efter svårighetsgrad. Titta därför igenom hela tentamen innan du börjar skriva. Alla program skall vara välstruktruerade, lätta att överskåda samt enkla att förstå. Vid rättning av uppgifter där programkod ingår bedöms principella fel allvarligare än smärre språkfel. LYCKA TILL!!!!
2
3 Uppgift 1. Betrakta nedanstående klasser och interface: public interface A{ public void a(); //A public interface B{ public void b(); //B public class C implements A{ public void a(){ System.out.println( "a() in C" ); //a public void c(){ System.out.println( "c() in C" ); //c //C public abstract class D extends C implements B { public void c(){ System.out.println( "c() in D" ); //c //D public class E extends D{ public void b(){ System.out.println( "b() in E" ); //b //E public class F extends C implements B{ public void b(){ System.out.println( "b() in F" ); //b //F Vad blir resultatet för var och en av följande satser (ger kompileringsfel, ger exekveringsfel, skriver ut xxx, etc)? a) C x = new E(); x.c(); b) Object o = new E(); System.out.println( o instanceof D ); c) C x = new D(); x.c(); d) B x = new E(); D y = (D) x; y.b(); e) C x = new F(); x.b(); f) D x = new C(); x.a(); g) B x = new F( ); D y = (D) x; x.b(); h) A x = new F(); C y = x; y.a(); Tips: Rita klassdiagram! (8 poäng) Uppgift 2. Följande klass finns i ett program som hanterar medlemmar i en golfklubb: public class Member { public final static int SENIOR = 1, JUNIOR = 2, PASSIVE = 3; private int membership; private String name; public String payment ( ) { switch (membership) { case SENIOR: return name + ", your membership fee is " ; case JUNIOR: return name + ", your membership fee is " ; case PASSIVE: return name + ", your membership fee is " ; return "" ; Klassen Member är bristfällig eftersom man inte kan lägga till nya typer av medlemskap utan att ändra i metoden payment. Vidare kan en medlem inte byta typ av medlemskap. Åtgärda dessa brister genom att göra en ny design som använder designmönstret Strategy. (6 poäng)
4 Uppgift 3. a) Betrakta nedanstående fyra specifikationer för metoden int getprice(string item) som finns i en klass som handhar matsedeln på en restaurang. item is not null and item appears in the the price of the item II) item is not the price of the item if it appears in the menu, or 0 if the item is not found in the item is not the price of NoSuchElementException if item is not found in menu the price of the item if it appears in the menu, or 0 if the item is not found in the NullPointerException if item is null För vart och ett av nedanstående par av specifikationer, ange vilken specifikation som är starkast. Om detta inte går att avgöra svara att de är lika starka. i) I och II ii) I och III iii) I och IV iv) II och III v) II och IV vi) III och IV (3 poäng) b) Nedan finns fyra möjliga implementationer av metoden getprice: Implementation 1: public int getprice(string item) { return items.get(item); Implementation 3: public int getprice(string item) { assert(item!= null); Integer price = items.get(item); if (price == null) { return 0; else { return price; Implementation 2: public int getprice(string item) { if (item == null) { throw new NullPointerException(); return items.get(item); Implementation 4: public int getprice(string item) { assert(item!= null); Integer price = items.get(item); if (price == null) { throw new NoSuchElementException(); return price; Instansvariabeln items är definieras som HashMap<String, Integer> items = new HashMap<String, Integer>(); i) Vilka av ovanstående specifikationer uppfyller implementation 1 ii) Vilka av ovanstående specifikationer uppfyller implementation 2 iii) Vilka av ovanstående specifikationer uppfyller implementation 3 iv) Vilka av ovanstående specifikationer uppfyller implementation 4 (2 poäng)
5 Uppgift 4. Betrakta nedanstående klasser (utlämnad kod är betydelselös för uppgiften): public class Matching<T1, T2> { public void addpair(t1 x, T2 y) {... public T1 getmatchright(t2 x) {... public T2 getmatchleft(t1 x) {... public class OptionallyMatching<T1, T2, T3> extends Matching<T1, T2> { public void setlabel(t1 x, T2 y, T3 z) {... public T3 getlabel(t1 x, T2 y) {... public class Socks {... public class FancySocks extends Socks {... public class Shoes {... public class PrettyShoes extends Shoes {... Antag att följande deklarationer har gjorts Socks socks = new Socks(); FancySocks fancysocks = new FancySocks(); Shoes shoes = new Shoes(); PrettyShoes prettyshoes = new PrettyShoes(); Number n = new Integer(42); Matching<Socks, Shoes> m1 = new Matching<Socks, Shoes>(); Matching<FancySocks, PrettyShoes> m2 = new Matching<FancySocks, PrettyShoes>(); Matching<? extends Socks,? extends Shoes> m3; OptionallyMatching<Socks, Shoes, Integer> om1 = new OptionallyMatching<Socks, Shoes, Integer>(); Ange för var och en av nedanstående satser om satsen är korrekt eller ger kompileringsfel. Motivera! Uppgift 5. a) m1 = m2; b) m1 = om1; c) m1.addpair(socks, prettyshoes); d) prettyshoes = m1.getmatchleft(socks); e) om1.setlabel(socks, prettyshoes, n); f) n = om1.getlabel(fancysocks, prettyshoes); g) m3 = m2; h) m3.addpair(socks, shoes); Betrakta nedanstående klasser: public class Course implements Cloneable, Serializable { //... implementation are omitted for the sake of brevity //Course public class Student { private List<Course> courses; private String name; private int year; private double gpa; //... constructors and methods are omitted for the sake of brevity //Student (4 poäng) a) Överskugga (implementera) metoden clone() i klassen Student. Djup kloning skall användas. (4 poäng) b) Gör de tillägg som behövs för att kunna skriva ut objekt av klassen Student på en fil. (1 poäng)
6 Uppgift 6. DVI- respektive VGA-kablar implementerar följande interface: public interface DVICable { public void transferdvisignal(int transfersignal); public interface VGACable{ public void transfervgasignal(int signal); //VGACable Vi har ett har ett klientprogram som nyttjar sig av en VGA-kabel enligt: public class Client { private VGACable cable; private int data; public Client(VGACable cable) { this.cable = cable; public void senddata() { cable.transfervgasignal(data); //code omitted Vi har dock inte tillgång till någon implementation av interfacet VGACable men däremot en implementation av intrfacet DVICable: public class DualDVI implements DVICable { public void transferdvisignal(int transfersignal) { //code omitted System.out.println("Transfering DVI signal: " + transfersignal); //transferdvisignal //DualDVI Använd designmönstret Adapter för att implementera en klass SignalAdapter som anpassar gränssnittet för typen VGACable till gränssnittet för typen DVICable. (5 poäng) Uppgift 7. Pelle Hacker håller på och utvecklar ett röstningssystem. Rösterna utgörs av strängar och Pelle lagrar dessa i en lista av typen List<String> enligt: ["Lind", "Andersson", "Steen", "Åhs", "Andersson", "Ek",..., "Steen", "Lind"] Du skall nu hjälpa Pelle med att räkna samman hur många röster var och en får. Detta gör du genom att specificera klassen VoteCounter: public class VoteCounter { /** Räknar antal olika slags element i listan votes och returnerar resultatet i en map med par av element och dess antal förekomster. */ public static <E> Map<E, Integer> result(list<e> votes) { //skall du implementera i deluppgift a) //VoteCounter När denna klass är implementerad (på ett korrekt sätt) kan Pelle erhålla resultatet av röstningen på formen {Åhs=13, Andersson=22, Lind=9,..., Steen=18 genom följande kodsekvens: List<String> list = //Listan med röster Map<String, Integer> resultmap = VoteCounter.result(list); System.out.println(resultMap);
7 a) Skriv klart metoden result i klassen VoteCounter. (8 poäng) b) Nu när du är klar med implementationen av klassen VoteCounter kommer Pelle och säger du behöver skriva om metoden result, eftersom han beslutat sig för att lagra rösterna i en lista av typen List<Candidat> istället för i en lista av typen List<String>. Klassen Candidat har följande utseende: public class Candidate { private String personnumber; private String name; private String address; public Candidate(String personnumber, String name, String address) { this.personnumber; = personnumber; this.name = name; this.adress = address; public String getpersonnumber() { return personnumber; public String getname() { return name; public String getaddress() { return address; public String tostring() { return name; //Candidate Du kan dock upplysa Pelle om att metoden result inte behöver förändras, eftersom du varit förutseende och gjort den generisk. Däremot påpekar du för Pelle att klassen Candidate måste överskugga metoderna hashcode och equals, samt implementera interfacet Comparable, för att med säkerhet erhålla en korrekt sammanräkning av rösterna ifall en lista av typen List<Candidat> används istället för en lista av typen List<String>. i) Förklara varför det är nödvändigt att klassen Candidate överskuggar metoderna hashcode och equals samt implementera interfacet Comparable. Ange också vilket kontrakt som måste gälla mellan hashcode och equals. (2 poäng) Uppgift 8. ii) Hjälp Pelle att implementera dessa kompletteringarna i klassen Candidate. Betrakta nedanstående klasser: public class Model { private Gui gui; private int state; // attribute representing the state public Model(Gui gui) { this.gui = gui; public void changestate() { // commands changing the state gui.showstate(state); //Model public class Gui extends JFrame { public void showstate(int state) { // display state //Gui public class Main { public static void main(string [] arg) { Model m = new Model(new Gui()); m.changestate(); m.changestate(); m.changestate(); (3 poäng) Ovanstående design är bristfällig eftersom modellen (klassen Model) känner till vyn (klassen Gui). Modifiera designen med användning av Observer-mönstret så att klassen Model kan kompileras utan tillgång till klassen Gui. (6 poäng)
8 Uppgift 9. Betrakta klassen Auction nedan som utgör en av komponenterna i ett system för att handha auktioner över nätet (du behöver inte förstå alla detaljerna för att kunna lösa uppgiften): public class Auction extends Thread { currentbid private int currentbid; holds the current highest private String highestbidder = "Nobody"; bid. private boolean biddingopen = true; highestbidder holds the name of of the public Auction (int minbid) { bidder who has the highest bid. currentbid = minbid; biddingopen has the value true if if the /* Return the current highest bid. */ public synchronized int getcurrentbid () { return currentbid; /* Return name of the bidder who has the highest bid. */ public synchronized String gethighestbidder() { String bidder = highestbidder; return highestbidder; /* Return true if the auction is going on, else false. */ public synchronized boolean biddingallowed () { return biddingopen; /* Close the auction. */ private synchronized void closebidding () { biddingopen = false; /* Will accept newbid from thebidder if the bid is higher than currently offered bid. If the bid is accepted, */ /* bidder thread blocks here until another bidder give a higher bid or the bidder wins the auction. */ public synchronized void setbid (int newbid, String thebidder) { if (newbid > currentbid) { highestbidder = thebidder; currentbid = newbid; System.out.println("Bid of " + currentbid + " from " + thebidder + " accepted"); notifyall(); try { while (biddingallowed() && thebidder == highestbidder) wait(); catch (InterruptedException e) {; public void run() { while (biddingallowed()) { int lastbid = currentbid; try { sleep(3000); catch (InterruptedException e ){ if (lastbid == currentbid) closebidding(); System.out.println("Sold to " + highestbidder); //Auction auction is is going on, else the value false. Lowest bid accepted must be higher than minbid. Checks each three seconds to to see if if the current highest bid has been raised. If If not the auction ends and the goods goes to to last highest bidder.
9 För att få till stånd en auktion måste det också finnas budgivare. Din uppgift är att implementera klassen public class Bidder extends Thread som modellerar budgivarna i auktionen. I nedanstående main-metod framgår hur en auktion med tre budgivare skapas. public class Main { public static void main (String [] args) { Auction aution = new Auction(110); Bidder bidder1 = new Bidder ("Bidder 1", aution, 170); Bidder bidder2 = new Bidder ("Bidder 2", aution, 120); Bidder bidder3 = new Bidder ("Bidder 3", aution, 150); aution.start(); bidder1.start(); bidder2.start(); bidder3.start(); //Main Exempel på utskrift: Bid of of 111 from Bidder 1 accepted Bid of of 112 from Bidder 2 accepted... Bid of of 148 from Bidder 1 accepted Bid of of 149 from Bidder 3 accepted Bid of of 150 from Bidder 1 accepted Sold to to Bidder 1 Klassen Bidder har en konstruktor med tre argument - budgivarens namn, vilken auktion budgivaren skall delta i samt hur högt bud budgivaren är villig att ge. En budgivare deltar i auktionen så länge som det lagda budet ligger lägre än vad budgivaren själv är villig att ge eller så länge som auktionen pågår. I det senare fallet har budgivaren vunnit budgivningen. En budgivare höjer alltid det lagda budet med 1. I din implementation av Bidder skall du låta tråden sova en slumpmässig tid, om max en sekund, mellan varje budgivning. (8 poäng)
Institutionen för TENTAMEN CTH VT-15 Datavetenskap 2015-08-19 TDA550 DAG: 15-08-19 TID: 8:30 12:30
Institutionen för TENTAMEN CTH VT-15 Datavetenskap 2015-08-19 TDA550 Tentamen för TDA550 Objektorienterad programvaruutveckling IT, fk DAG: 15-08-19 TID: 8:30 12:30 Ansvarig: Christer Carlsson, ankn 1038
TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P
UME UNIVERSITET Datavetenskap 981212 TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P Datum : 981212 Tid : 9-15 HjŠlpmedel : Inga Antal uppgifter : 9 TotalpoŠng : 60 (halva pošngtalet kršvs normalt fšr
TENTAMEN: Objektorienterad programmering. Läs detta! Skriv din tentamenskod på varje blad (så att vi inte slarvar bort dem).
1 (7) TENTAMEN: Objektorienterad programmering Läs detta! Uppgifterna är inte ordnade efter svårighetsgrad. Börja varje hel uppgift på ett nytt blad. Skriv inte i tesen. Ordna bladen i uppgiftsordning.
Omtentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-16, TDA540. Dag: , Tid:
Omtentamen för TDA540 Objektorienterad Programmering Institutionen för Datavetenskap CTH HT-16, TDA540 Dag: 2017-04-12, Tid: 14.00-18.00 Ansvarig: Examinator: Alex Gerdes Carlo A. Furia Förfrågningar:
Institutionen för TENTAMEN CTH HT-14 Datavetenskap 2015-01-14 TDA550 DAG: 15-01-14 TID: 14:00 18:00
Institutionen för TENTAMEN CTH HT-14 Datavetenskap 2015-01-14 TDA550 Tentamen för TDA550 Objektorienterad programvaruutveckling IT, fk DAG: 15-01-14 TID: 14:00 18:00 Ansvarig: Christer Carlsson, ankn 1038
Tänk på följande: Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.
Tentamen Programmeringsteknik I 2015-01-10 Skrivtid: 8.00 13.00 Hjälpmedel: Java-bok Tänk på följande: Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till
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.
Tentamen. 2D4135 vt 2005 Objektorienterad programmering, design och analys med Java Lördagen den 28 maj 2005 kl 9.00 14.
Tentamen 2D4135 vt 2005 Objektorienterad programmering, design och analys med Java Lördagen den 28 maj 2005 kl 9.00 14.00, sal E33 Tentan har en teoridel och en problemdel. På teoridelen är inga hjälpmedel
Övning 4. I denna övning ska vi titta på icke-muterbarhet kontra muterbarhet, samt metoderna equals, hashcode och clone.
TDA550 - Objektorienterad programvaruutveckling, fk Övning 4. I denna övning ska vi titta på icke-muterbarhet kontra muterbarhet, samt metoderna equals, hashcode och clone. Uppgift 1 Icke-muterbarhet kontra
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-04-06, Tid: 14.00-18.00 Ansvarig: Examinator: Alex Gerdes Carlo A. Furia Förfrågningar:
Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.
Tentamen Programmeringsteknik I 2014-10-17 Skrivtid: 0800-1300 Hjälpmedel: Java-bok Tänk på följande Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till
Tentamen. Grundläggande programmering i Java A 5p, DTAA32 2003-03-21
Mitthögskolan ITM Institutionen för Informationsteknologi och medier. Bertil Danielsson 060-14 86 82 Jan-Erik Jonsson 060-14 87 90 Tentamen i Java A Sida 1/6 Tentamen Grundläggande programmering i Java
TDA550 Objektorienterad programvaruutveckling IT, forts. kurs Övning vecka 2
TDA550 Objektorienterad programvaruutveckling IT, forts. kurs Övning vecka 2 Pelle Evensen, Daniel Wetterbro 5 november 2009 Sammanfattning Denna vecka ska vi titta på abstrakta klasser kontra interface,
Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010)
Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010) Tid: Onsdagen 15 december 2004, 8:30 till 13:30 Plats: M Ansvarig lärare: Katarina Blom, tel 772 10 60. Läraren besöker tentamen kl
Outline. Objektorienterad Programmering (TDDC77) En frukt har ett namn. Man kan lägga en frukt i en korg... Hashing. Undantag. Ahmed Rezine.
Outline Objektorienterad Programmering (TDDC77) Föreläsning XIV: Undantag, Design Ahmed Rezine IDA, Linköpings Universitet Undantag Design Hösttermin 2017 En frukt har ett namn Man kan lägga en frukt i
Omtentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-16, TDA540. Dag: , Tid:
Omtentamen för TDA540 Objektorienterad Programmering Institutionen för Datavetenskap CTH HT-16, TDA540 Dag: 2017-08-24, Tid: 14.00-18.00 Ansvarig: Examinator: Alex Gerdes Carlo A. Furia Förfrågningar:
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 :
DAT043 Objektorienterad Programmering
DAT043 Objektorienterad Programmering Detta är en exempeltenta som innehåller gamla tentauppgifter av ungefär liknande slag som ni kan förvänta er se på ordinarie tenta i Del 1 respektive Del 2. Dock är
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
Objektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning XIV: Undantag, Design Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2017 Outline Hashing Undantag Design Outline Hashing Undantag Design En frukt
Institutionen för TENTAMEN CTH VT-15 Datavetenskap 2015-04-13 TDA550 DAG: 15-04-13 TID: 8:30 12:30
Institutionen för TENTAMEN CTH VT-15 Datavetenskap 2015-04-13 TDA550 Tentamen för TDA550 Objektorienterad programvaruutveckling IT, fk DAG: 15-04-13 TID: 8:30 12:30 Ansvarig: Christer Carlsson, ankn 1038
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
Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering
Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk
Tentamen Programmeringsteknik II och NV2 (alla varianter) 2008-12-10. Skriv bara på framsidan av varje papper.
Tentamen Programmeringsteknik II och NV2 (alla varianter) 2008-12-10 Skrivtid: 0800-1300 Inga hjälpmedel. Tänk på följande Maximal poäng är 40. För betygen 3 krävs 18 poäng. För betygen 4, 5 kommer något
Objektorienterad programmering D2
Objektorienterad programmering D2 Laboration nr 2. Syfte Att få förståelse för de grundläggande objektorienterade begreppen. Redovisning Källkoden för uppgifterna skall skickas in via Fire. För senaste
Idag. Exempel, version 2. Exempel, version 3. Ett lite större exempel
Idag Ett exempel Undantag Substitutierbarhet, subtyper, subklasser När val av metod beror av typerna hos två objekt Lite om överlagring Exempel, version 2 Notera: för samtliga figurer gäller: arean av
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 DE12, IMIT12, SYST12, ITEK11 (även öppen för övriga)
Grundläggande programmering med C# Provmoment: Ladokkod: Tentamen ges för: 7,5 högskolepoäng TEN1 NGC011 Tentamen DE12, IMIT12, SYST12, ITEK11 (även öppen för övriga) (Ifylles av student) (Ifylles av student)
Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.
Tentamen Programmeringsteknik I 2015-03-19 Skrivtid: 14:00 19:00 Hjälpmedel: Java-bok Tänk på följande Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.
Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.
Tentamen Programmeringsteknik I 2014-10-17 Skrivtid: 0800-1300 Hjälpmedel: Java-bok Tänk på följande Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till
Instuderingsuppgifter läsvecka 6 - LÖSNINGAR
Instuderingsuppgifter läsvecka 6 - LÖSNINGAR 1. 2. Om vi använder interfacet List behöver vi inte bry oss om den konkret implementation som används, därför kan implementationen bytas ut genom att endast
Tentamen LÖSNINGSFÖRSLAG. c) Tilldelningen C x = new D() ger kompileringsfel eftersom klassen D är abstrakt.
Tentamen 101213 - LÖSNINGSFÖRSLAG Uppgift 1. a) Ger utskriften c( ) in D b) Ger utskriften true c) Tilldelningen C x = new D() ger kompileringsfel eftersom klassen D är abstrakt. d) Ger utskriften b( )
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,
Tentamen i Objektorienterad programmering
CHALMERS TEKNISKA HÖGSKOLA Datavetenskap TDA547 Tentamen i Objektorienterad programmering Lördagen 12 mars 2011, 8.30 12.30. Jourhavande lärare: Björn von Sydow, tel 0762/981014. Inga hjälpmedel. Lösningar
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
Institutionen för TENTAMEN CTH VT-14 Datavetenskap 2014-04-22 TDA550 DAG: 14-04-22 TID: 8:30 12:30
Institutionen för TENTAMEN CTH VT-14 Datavetenskap 2014-04-22 TDA550 Tentamen för TDA550 Objektorienterad programvaruutveckling IT, fk DAG: 14-04-22 TID: 8:30 12:30 Ansvarig: Christer Carlsson, ankn 1038
Tentamen Programmering fortsättningskurs DIT950
Tentamen Programmering fortsättningskurs Datum: 2015-03-17 Tid: 08.30-12.30 Hjälpmedel: Engelskt-Valfritt språk lexikon Betygsgränser: U: -23 G: 24-43 VG: 44-60 (max 60) Lärare:. Någon besöker ca 10.00
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
Tentamen OOP 2015-03-14
Tentamen OOP 2015-03-14 Anvisningar Fråga 1 och 2 besvaras på det särskilt utdelade formuläret. Du får gärna skriva på bägge sidorna av svarsbladen, men påbörja varje uppgift på ett nytt blad. Vid inlämning
Objektsamlingar i Java
1 (6) Objektsamlingar i Java Objektorienterad programmering 3 Syfte Att ge träning i att använda objektsamlingar i Java. Mål Efter övningen skall du kunna använda objektsamlingsklasserna ArrayList och
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:
OOP Objekt-orienterad programmering
OOP F6:1 OOP Objekt-orienterad programmering Föreläsning 6 Mer om klasser och objekt Hantera många objekt ArrayList tostring() metoden this Vi vill ofta hantera många objekt i ett program: OOP F6:2 public
Övning vecka 6. public void method2() { //code block C method3(); //code block D }//method2
Övning vecka 6. TDA550 - Objektorienterad programvaruutveckling IT, fk Denna vecka ska vi titta på undantag, testning, generiska enheter, samlingar och designmönstret Iterator. Uppgift 1 Exceptions a)
Objektorienterad programvaruutveckling, fk, TDA550. Exempeltentamen
Objektorienterad programvaruutveckling, fk, TDA550 Exempeltentamen Uppgift 1. a) Vad skriver programmet ut? Motivera! public class A { public void f() { System.out.println("A.f"); public void h() { f();
Programmering för språkteknologer II, HT2014. evelina.andersson@lingfil.uu.se Rum 9-2035 http://stp.ling.uu.se/~evelina/uv/uv14/pst2/
Programmering för språkteknologer II, HT2014 Avancerad programmering för språkteknologer, HT2014 evelina.andersson@lingfil.uu.se Rum 9-2035 http://stp.ling.uu.se/~evelina/uv/uv14/pst2/ Idag - Hashtabeller
Institutionen för TENTAMEN CTH VT-15 Datavetenskap 2015-08-19 TDA550 DAG: 15-08-19 TID: 8:30 12:30
Institutionen för TENTAMEN CTH VT-15 Datavetenskap 2015-08-19 TDA550 Tentamen för TDA550 Objektorienterad programvaruutveckling IT, fk DAG: 15-08-19 TID: 8:30 12:30 Ansvarig: Christer Carlsson, ankn 1038
Tentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-16, TDA540. Dag: , Tid:
Tentamen för TDA540 Objektorienterad Programmering Institutionen för Datavetenskap CTH HT-16, TDA540 Dag: 2017-01-09, Tid: 14.00-18.00 Ansvarig: Examinator: Alex Gerdes Carlo A. Furia Förfrågningar: Alex
/* * * Lösningsförslag tentamen DIT950 * Datum * */ /* * -1 - */ För samtliga gäller,se föreläsningsanteckningar.
* * Lösningsförslag tentamen DIT950 * Datum 150317 * * -1 - För samtliga gäller,se föreläsningsanteckningar. * - 2 - (Diagram visas inte, kontakta mig för ev frågor) // a C c = new A(); // Compile! Sub
Föreläsnings 10 - Överlagring, Konstruerare, Arv, Mer Exceptions, Reguljära Uttryck
Föreläsnings 10 - Överlagring, Konstruerare, Arv, Mer Exceptions, Reguljära Uttryck Josef Svenningsson Tisdag 13/1 Överlagring Ur klassen Math: public static max(int a, int b) public static max(double
F4. programmeringsteknik och Matlab
Programmeringsspråk Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer 1 Ett program är en eller flera instruktioner
Lösningsförslag. Programmeringsmetodik, KV: Java och OOP. 17 januari 2004
Lösningsförslag Programmeringsmetodik, KV: Java och OOP 17 januari 2004 Examinator: Johan Karlsson Skrivtid: 9-15 Hjälpmedel: En av följande böcker: Barnes & Kölling: Objects First With Java a practical
Institutionen för TENTAMEN CTH HT-17 Datavetenskap TDA550
Institutionen för TENTAMEN CTH HT-17 Datavetenskap 2017-01-13 TDA550 Tentamen för TDA550 Objektorienterad programvaruutveckling, fk DAG: 17-01-13 TID: 14:00 18:00 Ansvarig: Christer Carlsson, ankn 1038
TENTAMEN: Objektorienterad programmering. Läs detta! Börja varje hel uppgift på ett nytt blad. Skriv inte i tesen.
1 (9) TENTAMEN: Objektorienterad programmering Läs detta! Uppgifterna är inte ordnade efter svårighetsgrad. Börja varje hel uppgift på ett nytt blad. Skriv inte i tesen. Ordna bladen i uppgiftsordning.
Institutionen för TENTAMEN CTH VT-15 Datavetenskap 2015-04-18 TDA540. Tentamen för TDA540 Objektorienterad programmering
Institutionen för TENTAMEN CTH VT-15 Datavetenskap 2015-04-18 TDA540 Tentamen för TDA540 Objektorienterad programmering DAG: 15-04-18 TID: 14:00 18:00 Ansvarig: Joachim von Hacht och Christer Carlsson
Instuderingsuppgifter läsvecka 2
Instuderingsuppgifter läsvecka 2 1. 2. 3. 4. 5. 6. 7. 8. 9. En referensvariabel har både en statisk typ och en dynamisk typ. Förklara dessa båda begrepp! Förklara begreppet polymorfism. Förklara hur statisk
Tentamen för TTIT71 Programmering 2007-01-10 kl. 08-12 Institutionen för datavetenskap Linköpings universitet. Uppgift 1. (2 p)
Tentamen för TTIT71 Programmering 2007-01-10 kl. 08-12 Institutionen för datavetenskap Linköpings universitet Antal uppgifter: 6 Max: 32 poäng Betyg: 3:a 16 poäng, 4:a 24 poäng, 5:a 28 poäng Hjälpmedel:
Objektorienterad programmering i Java
Objektorienterad programmering i Java Föreläsning 4 Täcker i stort sett kapitel 6 i kursboken Java Software Solutions 1 Läsanvisningar Den här föreläsningen är uppbyggd som en fortsättning av exemplet
Lösningsförslag till tentamen
till tentamen 1 (6) Kurs Objektorienterad programmering Program D2 Läsår 2010/2011, lp 1 Examinator Uno Holmer Uppgift 1 (10 p) Ingen lösning ges. Se kurslitteraturen. Uppgift 2 (11 p) public class CounterButton
Del A (obligatorisk för alla)
Del A (obligatorisk för alla) A1. Ringa in rätt svarsalternativ eller skriv svar i ruta om sådan a) Satsen double x = (int)(1 + 3/2.0) + 3.; resulterar i b) Satsen int x = (int)(1 + 3/2.0) + 3.; resulterar
Outline. Objektorienterad Programmering (TDDC77) Åsidosättning. Signatur. Åsidosättning. Abstrakta klasser. Ahmed Rezine.
Objektorienterad Programmering (TDDC77) Föreläsning XI: åsidosättning, gränssnitt, uppräkning, hierarkier Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Signatur public static int parseint (
Distribuerade system. CORBA eller RMI
Distribuerade system Java XII - 1 CORBA eller RMI Java XII - 2 Några motiv till distribuerade system kan vara att: Utjämna belastningen mellan olika maskiner i ett nätverk Utnyttja kapaciteten i en större
Institutionen för TENTAMEN CTH HT-15 Datavetenskap 2015-08-27 TDA540. Tentamen för TDA540 Objektorienterad programmering
Institutionen för TENTAMEN CTH HT-15 Datavetenskap 215--27 TDA54 Tentamen för TDA54 Objektorienterad programmering DAG: 15--27 TID: 14: 1: Ansvarig: Joachim von Hacht och Christer Carlsson Förfrågningar:
Lösningsförslag till omtentamen för TDA540 Objektorienterad Programmering
Lösningsförslag till omtentamen för TDA540 Objektorienterad Programmering Institutionen för Datavetenskap CTH HT-6, TDA540 Dag: 207-0-24, Tid: 4.00-.00 Uppgift a) En abstrakt klass kan inte instansieras,
Integritetsprincipen. Objektorienterad modellering och diskreta strukturer / design
Integritetsprincipen Objektorienterad modellering och diskreta strukturer / design Designmönster och fallstudier Integritetsprincipen Gör attribut, metoder och klasser så hemliga de går. Lämna inte ut
Tentamen. Lösningsförslag
Sida 1/8 Tentamen Grundläggande programmering i Java A 5p, DTAA32 2002-03-22 Lösningsförslag Uppgift 1 ( 3p ) Utskriften blir: Skriv in ett tal 24 47 48 intal=471 Uppgift 2 ( 6p ) a.) b.) c.) d.) e.) falskt
trafiksimulering Intro OU5 trafiksimulering
Presentation av obligatoriska uppgiften trafiksimulering Ett lite större program med flera klasser Hur man designar ett system Hur man gör simuleringar 1 Valsätr ravägen Korsningen Dag hammarsköldsväg
Tentamen Programmeringsteknik II Skrivtid: Hjälpmedel: Java-bok (vilken som helst) Skriv läsligt! Använd inte rödpenna!
Tentamen Programmeringsteknik II 2014-01-09 Skrivtid: 0800-1300 Hjälpmedel: Java-bok (vilken som helst) Tänk på följande Skriv läsligt! Använd inte rödpenna! Skriv bara på framsidan av varje papper. Börja
TENTAMEN OOP
TENTAMEN OOP 2014-01-19 ANVISNINGAR Påbörja varje ny uppgift på nytt blad. Skriv endast på ena sidan av bladen. Skriv tydligt - oläsbara svar beaktas ej. BETYGSÄTTNING Max antal poäng är 30. För att bli
Språkkonventioner och redigering av tal.
Språkkonventioner och redigering av tal. Kap J3-1 Konventioner för olika språk hanteras med hjälp av klassen java.util.locale Ett objekt i denna klass beskriver en lokal konvention. Lokala konventioner
Grundläggande programmering med C# 7,5 högskolepoäng
Grundläggande programmering med C# 7,5 högskolepoäng Provmoment: TEN1 Ladokkod: NGC011 Tentamen ges för: Omtentamen DE13, IMIT13 och SYST13 samt öppen för alla (Ifylles av student) (Ifylles av student)
Institutionen för TENTAMEN CTH HT-13 Datavetenskap TDA550 DAG: TID: 8:30 12:30
Institutionen för TENTAMEN CTH HT-13 Datavetenskap 2013-12-17 TDA550 Tentamen för TDA550 Objektorienterad programvaruutveckling IT, fk DAG: 13-12-17 TID: 8:30 12:30 Ansvarig: Christer Carlsson, ankn 1038
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
TENTAMEN: Objektorienterad programutveckling, fk. Läs detta! Börja varje hel uppgift på ett nytt blad. Skriv inte i tesen.
1 (9) TENTAMEN: Objektorienterad programutveckling, fk Läs detta! Uppgifterna är inte ordnade efter svårighetsgrad. Börja varje hel uppgift på ett nytt blad. Skriv inte i tesen. Ordna bladen i uppgiftsordning.
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
SI-pass 4. Johan Brook och Jesper Persson. 25 september 2012. Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner.
SI-pass 4 Johan Brook och Jesper Persson 25 september 2012 1. Sant eller falskt? Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner. Interfaces i Java kan innehålla privata
Detta dokument är ett exempel, cirka hälften av en tentamen för TDA545 Objektorienterad programvaruutveckling
Göteborg, Magnus Myréen, 2014-10- 15 Detta dokument är ett exempel, cirka hälften av en tentamen för TDA545 Objektorienterad programvaruutveckling Fulltentamen vitsord: 3=28p, 4=38p, 5= 48p, max 60p. Max
Föreläsning 7. Träd och binära sökträd
Föreläsning 7 Träd och binära sökträd Föreläsning 7 Träd Binära träd Binärt sökträd som ADT Implementering av binärt sökträd Travestera binärt sökträd Sökning Insättning/borttagning Läsanvisningar och
TDA550 Objektorienterad programvaruutveckling IT, forts. kurs Övning vecka 5
TDA550 Objektorienterad programvaruutveckling IT, forts. kurs Övning vecka 5 Daniel Wetterbro 23 november 2009 Sammanfattning Denna vecka ska vi titta på I/O, samlingar och generics. Övningarna är graderade
Lösningsförslag till tentamen i EDA011/EDA017 Programmeringsteknik för F, E, I, π och N 25 maj 2009
Lösningsförslag till tentamen i EDA011/EDA017 Programmeringsteknik för F, E, I, π och N 25 maj 2009 Christian 5 mars 2010 Observera att poängen nedan är preliminära det är möjligt att vi korrigerar något
Tentamen LÖSNINGSFÖRSLAG
Tentamen 111212- LÖSNINGSFÖRSLAG Uppgift 1. a) A constructor1 B constructor2 b) Satsen är giltig. Utskriften blir: b = 0 c) Kodsegmentet är ogiltigt. Rad 4 orsakar ett kompileringsfel, eftersom en superklass
Tentamen, EDAA20/EDA501 Programmering
LUNDS TEKNISKA HÖGSKOLA 1(4) Institutionen för datavetenskap Tentamen, EDAA20/EDA501 Programmering 2011 10 19, 8.00 13.00 Anvisningar: Denna tentamen består av fem uppgifter. Preliminärt ger uppgifterna
Mera om generik. Innehåll. Generik och arv Wildcards Vektorer och generik Generiska metoder. EDA690 (Mera om generik) HT 2013 1 / 24
Mera om generik Innehåll Generik och arv Wildcards Vektorer och generik Generiska metoder EDA690 (Mera om generik) HT 2013 1 / 24 Begreppet subtyp/supertyp i Java Supertyper för en viss klass C är alla
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:
Sammanfattning och repetition utgående från typiska tentamensuppgifter
(2 mars 2018 F6 1 ) Dagens föreläsning Sammanfattning och repetition utgående från typiska tentamensuppgifter (2 mars 2018 F6 2 ) A-fråga Hur många objekt skapas av nedanstående kod? World w = new World();
Övning vecka 4. Denna vecka ska vi titta på icke-muterbarhet kontra muterbarhet, samt metoderna equals, hashcode och clone.
TDA550 - Objektorienterad programvaruutveckling IT, fk Övning vecka 4. Denna vecka ska vi titta på icke-muterbarhet kontra muterbarhet, samt metoderna equals, hashcode och clone. Uppgift 1 Icke-muterbarhet
Föreläsning 12: Exempel och problemlösning
TDA 545: Objektorienterad programmering Föreläsning 12: Exempel och problemlösning Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Idag Problemlösning, dvs hur man ska tänka för att hitta lösning int mängd/set
The Last Adventure. Innehåll. Objektorientering. Språket Java. Java - Paket. Java - synlighet. Den sista lektionen. Repetition.
Innehåll The Last Adventure Den sista lektionen Repetition Examination Slutar 14:45 (minnesstund) Många saker "flashar" förbi - hojta Objektorientering Språket Java Class Object Inheritance Polymorphism
Övning 5. TDA550 - Objektorienterad programvaruutveckling, fk
TDA550 - Objektorienterad programvaruutveckling, fk Övning 5. Denna vecka ska vi titta på designmönstren Singleton, State, Observer, Composite och Decorator, samt gränssnittet Comparator. Uppgift 1 Syftet
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
TDA550 Objektorienterad programvaruutveckling IT, forts. kurs Övning vecka 3
TDA550 Objektorienterad programvaruutveckling IT, forts. kurs Övning vecka 3 Pelle Evensen, Daniel Wetterbro 16 oktober 2012 Sammanfattning Denna vecka ska vi titta på polymorfism, dynamisk kontra statisk
2D1310, 2D1311 Programmeringsteknik Tentamen (1p) 3 maj 2001, kl 9.00-12.00
2D1310, 2D1311 Programmeringsteknik Tentamen (1p) 3 maj 2001, kl 9.00-12.00 Hjälpmedel: En Javabok (det blå Javahäftet som ingår i kursbunten räknas som en Javabok). För betyget godkänd krävs att a- eller
Lösningsförslag till tentamen i EDAF25 Objektorienterad modellering och design Helsingborg
LUNDS TEKNISKA HÖGSKOLA 1(7) Institutionen för datavetenskap Lösningsförslag till tentamen i EDAF25 Objektorienterad modellering och design Helsingborg 1. a) Figure 1 2015 06 04 GeometryApp GraphicalApp
Gissa det hemliga talet
Laborationsanvisning Gissa det hemliga talet Steg 1, laborationsuppgift 1 Författare: Mats Loock Kurs: ASP.NET MVC Kurskod:1DV409 Innehåll Problem 4 Modell 4 Den uppräkningsbara typen Outcome 5 Strukturen
Java M1 V2 L2 K2 TM W. Tentamen i Programmering 2004-04-17, kl 08.00-13.00. LUNDS TEKNISKA HÖGSKOLA Institutionen för datavetenskap.
LUNDS TEKNISKA HÖGSKOLA Institutionen för datavetenskap 1(5) M1 V2 L2 K2 TM W Java Tentamen i Programmering 2004-04-17, kl 08.00-13.00 Anvisningar Tillåtna hjälpmedel: Holm, Objektorienterad programmering
Examination i. PROGRAMMERINGSTEKNIK F1/TM1 TIN212 (Dugga) Dag: Onsdag Datum: 2014-12-17 Tid: 9.00-12.00 (OBS 3 tim) Rum: V
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Erland Holmström Göteborg 16 dec 2014 Examination i PROGRAMMERINGSTEKNIK F1/TM1
Objektorienterad Programkonstruktion, DD1346. Tentamen , kl
Skolan för datavetenskap och kommunikation Objektorienterad Programkonstruktion, DD1346 Tentamen 2017 06 10, kl. 9.00 12.00 Tillåtna hjälpmedel: Papper, penna och radergummi. Notera: Frågorna besvaras
Föreläsning 9: Arv och UML
TDA 545: Objektorienterad programmering Föreläsning 9: Arv och UML Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Quiz Vad betyder static? Varför skriver man get-metoder? public int getpos() { return pos;
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
Tentamen Programmeringsteknik I 2018-03-16 Skrivtid: 8:00 13:00 Tänk på följande Skriv läsligt. Använd inte rödpenna. Skriv bara på framsidan av varje papper. Lägg uppgifterna i ordning. Skriv uppgiftsnummer
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
Vinjett 6 - Party-admin
Vinjett 6 - Party-admin Denna vinjett är skapad av en gammal IT-basgrupp och är frivillig. Tankspridde Tom och Energiske Erik har gått med i festeriet ELiTHen. Äldre studenter varnade dem för att de skulle