a. Vilka av följande påståenden är riktiga? Observera att felaktigt valda påståenden ger poängavdrag. (4p)

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

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

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

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

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

1 Uppgift 1. a) Skapar ett Company-objekt med hjälp av den överlagrade konstruktorn. Du kan själv välja värden på instansvariablerna.

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

TENTAMEN OOP

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

Lösningar för tenta 3 DAT043,

JAVA Mer om klasser och objektorientering

Bankkonto - övning. Övning 2 Skriv en metod, geträntan, som returnerar räntan.

Variabler som hör till enskilda objekt. Deklareras på översta nivån i klassen och i regel som private.

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

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Tentamen i Grundläggande programmering STS, åk 1 fredag

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING. Övningstentamen 1

DAT043 Objektorienterad Programmering

Objektorienterad programmering i Java

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING

Tentamen i Programmering

Detta dokument är ett exempel, cirka hälften av en tentamen för TDA545 Objektorienterad programvaruutveckling

Objektorienterad Programkonstruktion, DD1346. Tentamen , kl

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

Tentamen i Programmeringsteknik I

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 5 (6) Metoder. Metoder Deklarera. Metoder. Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc

Tentamen. 2D4135 vt 2005 Objektorienterad programmering, design och analys med Java Lördagen den 28 maj 2005 kl

PROGRAMMERINGSTEKNIK TIN212

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

Laboration 1 - Grunderna för OOP i Java

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

Grundläggande programmering med C# 7,5 högskolepoäng

Det är principer och idéer som är viktiga. Skriv så att du övertygar examinatorn om att du har förstått dessa även om detaljer kan vara felaktiga.

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng

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

Föreläsning 8 - del 2: Objektorienterad programmering - avancerat

Tentamen i Grundläggande programmering STS, åk 1 lördag

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

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

LÖSNINGSFÖRSLAG TENTAMEN

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

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

TENTAMEN OOP

Lab5 för prgmedcl04 Grafik

Modern Programmering (2546) Tentamen lördag

TENTAMEN OOP

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

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

DD1342 Programkonstruktion för F1,

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

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

Omtentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-17, TDA540. Dag: , Tid:

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

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

Tentamen. DD2385 Programutvecklingsteknik vt 2013 Onsdagen den 22 maj 2013 kl Hjälpmedel: penna, suddgummi, linjal

Del A (obligatorisk för alla)

OOP Tenta

TDDC77 Objektorienterad Programmering

Tentamen OOP

Klasshierarkier. Klasser kan byggas på redan definierade klasser

Konstruktion av klasser med klasser

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.

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

Tentamen i Grundläggande programmering STS, åk 1 fredag

Klasshierarkier - repetition

SMD 134 Objektorienterad programmering

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

OOP Tentamen

Objektorienterad Programkonstruktion, DD1346. Tentamen , kl

Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Malmö högskola 2007/2008 Teknik och samhälle

4 13 / %.; 8 </" '': " / //&' " " ' * TelefonKostnad +,-%&. #!" $% " &' . > / ' 5 /' * 13/ &' static Math 1+" &'/ % 12 "" static "' * 1 /") %& &

Tentamen. Grundläggande programmering i Java A 5p, DTAA

PROGRAMMERING-Java TENTAMINA

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

Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.

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

2D1339 Programkonstruktion för F1, ht 2003

Malmö högskola 2008/2009 CTS

Lösningsförslag övning 2.

Tentamen i Grundläggande programmering STS, åk

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

2D1339 Programkonstruktion för F1, ht 2004

Dagens text. Programmeringsteknik. Mer om Scanner-klassen. Dialogrutor (klassen JOptionPane) Bubbelsortering. Omslagsklasser.

Tentamen. Lösningsförslag

Tentamen i Programmeringsteknik I

Föreläsning 3-4 Innehåll

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

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

TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET

Tentamen i Grundläggande programmering STS, åk

Objektorienterad Programkonstruktion. Föreläsning 2 2 nov 2016

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

Dagens text. Programmeringsteknik. Mer om Scanner-klassen. Dialogrutor (klassen JOptionPane) Bubbelsortering. Omslagsklasser.

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

Omtentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-16, TDA540. Dag: , Tid:

OBJEKTORIENTERAD PROGRAMMERING för Z1 (TDA540) Ansvarig: Jan Skansholm, tel eller

Chapter 4: Writing Classes/ Att skriva egna klasser.

Tentamen ID1004 Objektorienterad programmering May 29, 2012

Transkript:

TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för Sy 2 2002-03-15, kl 09.00 13.00 Hjälpmedel: Endast bifogat kompendium Max: 66 poäng, för godkänt krävs 50%. Skriv tydliga och kortfattade svar 1. Grunderna i Java, 10p a. Vilka av följande påståenden är riktiga? Observera att felaktigt valda påståenden ger poängavdrag. (4p) i. Java är ett objektorienterat programmeringsspråk ii. En variabel kan tilldelas ett nytt värde iii. En variabel som är deklarerad i en for-loop kan användas i satser utanför for-loopen. iv. Det är möjligt att i samma klass deklarera flera metoder vars namn och parameterlista är lika v. En defaultkonstruktor saknar parametrar vi. En klassmetod kan använda klassens instansvariabler vii. En lokal variabels namn kan vara lika som någon av instansvariablernas namn. viii. En konstruktor returnerar ett värde ix. En konstant måste deklareras med det reserverade ordet static. x. Ett namn på en variabel kan börja med en bokstav, siffra eller tecknet _ b. Här följer en skiss till ett program. (2p) minst(tala, talb) returnera det minsta värdet av tala och talb main() Undersök med hjälp av metoden minst vilket av talen 2.5 och 0.1 som är minst. Skriv ut det minsta talets värde till bildskärmen. Skriv ett fungerande program i java-kod utifrån ovanstående skiss.

c. Återge utskriften från följande programsekvens (2p) int summa = 0, i = 1; while (i < 10) if (i % 2 == 0) summa += i; i++; System.out.println(summa); d. Betrakta följande kod (2p) class Trams int x = 3; int y = 5; void skriv() int x = 7; int kvot = x / y; System.out.println("x/y = " + kvot); Återge exakt den utskrift som metoden skriv genererar.

2. Fält och Strängar. Arv och gränssnitt. (9p) a. Klasserna nedan ingår i ett program som administrerar studenter på Campus Borlänge. class UtbProgram private String programnamn; private int antalstudenter; public UtbProgram(String namn, int antalstudenter) // initierar instansvariablerna // kod som inte visas här public int getantalstudenter() // returnerar antalet studenter i detta program return antalstudenter; public String getprogramnamn() // returnerar namnet på detta utbildningsprogram return programnamn; // slut på klassen UtbProgram class CampusBlge private UtbProgram[] program; private int antalutbprogram; public CampusBlge () // initierar instansvariablerna // kod som inte visas här public int totalsumma() // summerar antalet studenter i utbildningsprogramen int summa = 0; UtbProgram temp; for (int i=0; i < antalutbprogram; i++) temp = program[i]; // Uppgift 2 a) return summa; public void skrivutbprogrammedmångastud() // skriver ut namnen på alla utbildningsprogram med minst // 50 studenter // Uppgift 2 b) // andra metoder // slut på klassen CampusBlge Skriv koden som saknas i metoden totalsumma() i klassen CampusBlge. (2p)

b. Skriv koden för metoden skrivutbprogrammedmångastud() i klassen CampusBlge. (3p) c. Sant eller falskt? (4p) I. Följande satser är bara två olika skrivsätt för exakt samma sak: int tal; och Integer tal; II. Nyckelordet extends används för att skapa objekt av en superklass. III. En klass kan samtidigt vara superklass och subklass. IV. En klass som deklarerats som final kan inte vara basklass i en klasshierarki, d.v.s den kan inte ärvas. 3. Användargränssnitt, Händelsehantering, Grafik och Applets (7p) a. (2p) class Uppgift3 extends JFrame Uppgift3() xxx.add(new JButton("Knapp 1")); public static void main(string[]args) Uppgift3 frame = new Uppgift3(); frame.setsize(200, 100); frame.setvisible(true); Vad kan xxx bytas ut mot för att knappen ska visas i exemplet ovan? b. Föreslå hur du med hjälp av olika layout managers kan åstadkomma det utseende som följande fönstrer har. Du behöver inte skriva någon kod, utan endast ange vilka layout managers du använder och hur du använder dem. (2p) c. Vilken klass ärver i stort sett alla komponentklasser i Swing av? Vilken klass ärver denna klass av? (2p) d. Vilken gränssnitt används i Swing för att utföra något när användaren flyttar musen? (1p)

4. Strömmar 10p Skriv ett program som läser in och beräknar summan och medelvärdet av de decimaltal som förekommer i binärfilen tal.bin. Programmet ska därefter skriva ut summan och medelvärdet till en textfil med namnet resultat.txt. I binärfilen tal.bin kommer först ett heltal av typen int vars värde beskriver hur många decimaltal som följer. Därefter förekommer det endast decimaltal av typen double i resten av filen. 5. Trådar 10p Förklara kortfattat följande begrepp a. start() (2p) b. notify() (2p) c. Runnable (2p) d. monitor (2p) e. synchronized (2p) 6. Nätverk 10p a. Förklara kortfattat begreppet tre-skikts arkitektur 2p b. Förklara kortfattat skillnaden mellan en typ 1 JDBC-ODBC drivrutin och en typ 4 native-protocol/all-java drivrutin. 2p c. Är Java Beans och Enterprise Java Beans två olika benämningar på samma sak? Motivera ditt svar. 1p d. Vad är rmic? 1p e. Med hjälp av följande html-sida ska en användare kunna omvandla svenska kronor till euro. (4p) <html> <head> <title>omvandlar svenska kronor till euro</title> </head> <body> <form action="kr_euro.jsp" method="post"> Svenska kronor: <input type="text" name="kronor"> <input type="submit" value="till Euro"> </form> </body> </html> Skriv den JSP-sida som ovanstående html-sida anropar. JSP-sidan ska omvandla kronor till euro och förmedla resultatet i till användaren i form av en ny sida. Använd kursen 9.0725 kr för 1 euro. Samtlig kod ska redovisas.

7. Objektorienterat 10p Följande program saknar ett antal klasser. Skriv koden för dessa klasser. import java.util.*; class Order private Kund beställare; private List beställningslista = new ArrayList(); public Order(Kund enkund) beställare = enkund; public void addpost(vara envara) beställningslista.add(envara); public void visabeställning() System.out.println("\n- ORDER -----------------"); System.out.println(beställare); Iterator post = beställningslista.iterator(); while (post.hasnext()) System.out.println(post.next()); public class Kund private String namn; Kund(String ettnamn) namn = ettnamn; public String tostring() return "Kund: " + namn; public class Test public static void main(string[] arg) Order ordern = new Order(new Kund("Kalle Karlsson")); ordern.addpost(new Kaffe(3)); //3 kg kaffe ordern.addpost(new Kopp(1)); //1 stycken kopp ordern.visabeställning(); ordern = new Order(new Kund("Lisa Svensson")); ordern.addpost(new Kaffe(2)); //2 kg kaffe ordern.addpost(new Kopp(6)); //6 stycken koppar ordern.visabeställning(); //Uppgiften fortsätter på nästa sida

Programmet ska generera följande utskrift. - ORDER ----------------- Kund: Kalle Karlsson Kaffe, 3 kg Kopp, 1 st - ORDER ----------------- Kund: Lisa Svensson Kaffe, 2 kg Kopp, 6 st