Malmö högskola 2008/2009 CTS
|
|
- Lina Hedlund
- för 9 år sedan
- Visningar:
Transkript
1 Laboration 8 Avsikten med laborationen är att du lära dig skapa objekt med hjälp av klasser. Detta är en introduktion till ett objektorienterat tankesätt. Med hjälp av detta tankesätt kan du så småningom skapa större program. Java är ett programmeringspråk som understödjer den objektorienterade programmeringsstilen. Skapa paketet laboration8 innan du fortsätter på laborationen. Uppgift 1a Du ska skapa en klass Anstalld. Klassdiagrammet till höger beskriver vad klassen Anstalld ska innehålla. Diagrammet visar i vanlig ordning: Klassens namn Klassens attribut (instansvariabler). Minus-tecknet före namnet anger att synligheten ska vara private. Klassens metoder (instansmetoder). Plus-tecknet före namnet anger att metoden ska vara public. En anställd har tre egenskaper (attribut): namn, arbetsgivare och lön. namn och arbetsgivare är av typen String och lön av typen double. Attributen ska ha modifieraren private. En deklaration av attributet namn ser ut så här: private String namn; Lägg till detta och de övriga två attributen i klassen. Anstalld - namn : String - arbetsgivare : String - lön : double + setnamn(string) + setarbetsgivare(string) + setlön(double) + getnamn() : String + getarbetsgivare() : String + getlön() : String Då attributen är deklararade med modifieraren private så kan bara metoder i klassen Anstalld komma åt värdet. Om man vill att andra klasser ska kunna påverka eller se attributensvärde så ska man ha get-metoder och/eller set-metoder. En set-metod för attributet namn ser ut så här: public void setnamn(string n){ this.namn = n; En get-metod retunerar ett attributsvärde. En get-metod för attributets namn ser ut så här: public String getnamn(){ return this.namn; Skriv set-metoder och get-metoder till alla attribut så att du kan testa klassen Anstalld med nedanstående testprogram. DA129A, Programmering 1 1
2 Testprogram // Den första anställda skapas Anstalld a1=new Anstalld(); a1.setnamn("anna Olsson"); a1.setarbetsgivare("eriksson"); a1.setlön(25700); // Den andra anställda skapas Anstalld a2=new Anstalld(); a2.setnamn("pontus Persson"); a2.setarbetsgivare("malmö högskola"); a2.setlön(23900); //De anställda skrivs ut System.out.println(); System.out.println(a1.getNamn()+ " har anställning hos " + a1.getarbetsgivare() + " med lönen " + a1.getlön() + "."); System.out.println(); System.out.println(a2.getNamn()+ " har anställning hos " + a2.getarbetsgivare() + " med lönen " + a2.getlön() + "."); Körresultat Anna Olsson har anställning hos Eriksson med lönen Pontus Persson har anställning hos Malmö högskola med lönen Uppgift 1b Skapa en metod tostring i din klass Anstalld med metodhuvudet: public String tostring() { return ""; // Ersätt "" med en vettig sträng Metoden tostring returnerar ett värde av typen String, vilket innebär att det i metodkroppen måste finnas en rad som ser ut på följande sätt: return en sträng ; Då du gör anropet System.out.println( a1.tostring() ); ska utskriften se ut så här: Anna Olsson har anställning hos Eriksson med lönen Ändra i testprogrammet för att testa din tostring-metod. Uppgift 2 Du ska skriva klassen Bostad vilken ska representera en bostad. Viktiga egenskaper i klassen är bostadsyta och antalet rum. Klassdiagrammet till höger beskriver de instansvariabler och metoder (instansmetoder) som ska ingå i klassen: Instansvariabler: private double bostadsyta; private int antalrum; Metoder: public void setbostadsyta(double yta) public void setantalrum(int antal) public double getbostadsyta() public int getantalrum() public String tostring() Bostad - bostadsyta:double - antalrum:int + setbostadsyta(double) + setantalrum(int) + getbostadsyta():double + getantalrum():int + tostring():string - private + public 2
3 Nedan ser du ett testprogram och körresultatet av programmet. Testprogram Bostad bostad1 = new Bostad(); Bostad bostad2 = new Bostad(); bostad1.setbostadsyta(55); bostad1.setantalrum(2); bostad2.setbostadsyta(108.6); bostad2.setantalrum(4); System.out.println(bostad1.toString()); System.out.println("Yta: " + bostad2.getbostadsyta() + " m2" + " Antal rum: " + bostad2.getantalrum()); Körresultat Bostad med ytan 55.0 m2 och 2 rum. Yta: m2 Antal rum: 4 Uppgift 3 Du ska skriva klassen Vara vilken ska representera en vara i en affär. Viktiga egenskaper i klassen är varans namn, varans pris och antalet exemplar i affären. Klassdiagrammet till höger beskriver de instansvariabler och metoder (instansmetoder) som ska ingå i klassen. Nedan ser du ett testprogram och körresultatet av programmet. Testprogram Vara envara = new Vara(); envara.setnamn("standardmjölk"); envara.setpris(8.20); envara.setantal(120); Output.meddelande(enVara.toString()); envara.setnamn("7-växlad Crescent"); Output.meddelande(enVara.getNamn() + ": Pris=" + Output.format(enVara.getPris(),0,2) + " kr Antal=" + envara.getantal()); Körresultat Vara - namn : String - pris : double - antal : int + setnamn(string) + setpris(double) + setantal(int) + getnamn() : String + getpris() : double + getantal() : int + tostring():string 3
4 Uppgift 4 Nu ska du lägga till ett par metoder i klassen Anstalld. Gör en metod som beräknar årslönen för en anställd med följande metodhuvud public double årslön() Metoden ska alltså returnera en double. Returvärdet ska vara den anställdes årslön. Ändra i testprogrammet (Uppgift 1) för att testa din årslön-metod. Gör en metod som kontrollerar om två anställda har samma arbetsgivare: public boolean sammaarbetsgivare(anstalld a) Metoden ska returnera true om attributet arbetsgivare är det samma som a s arbetsgivare. Du ska använda metoden equals, som finns i klassen String, för att jämföra strängarna. String s1, s2; : if(s1.equals(s2)) { // s1.equals(s2) är true om strängarna samma, annars false : Ändra i testprogrammet (Uppgift 1) för att testa din sammaarbetsgivare-metod. Uppgift 5 Komplettera klassen Bostad med nedanstående metoder. Men testa metoderna en åt gången tills de fungerar. public double kvmperrum() Metoden ska räkna ut antalet kvadratmeter bostadsyta per rum för aktuellt objekt. Resultatet av beräkningen ska returneras. Bostad b = new Bostad(); b.setbostadsyta(110); b.setantalrum(5); System.out.println(b.kvmPerRum); Ger utskriften: 22.0 public double jämförbostadsyta(bostad b) Metoden ska jämföra två bostäder, aktuellt objekt och inparametern b, avseende deras yta. Beräkna skillnaden mellan ytan i aktuellt objekt och ytan i b. Returnera skillnaden. Detta innebär att * om aktuellt objekt har störst yta så returneras ett positivt värde (>0). * om bostäderna har samma yta så returneras 0. * om bostaden b har störst yta så returneras ett negativt värde (<0). Extrametod public Bostad flestrum(bostad b) Metoden ska returnera en referens till den bostad som har flest rum. Om de har lika många rum ska referens till aktuellt objekt returneras. 4
5 Uppgift 6 Komplettera klassen Bostad med följande konstruktorer: public Bostad() Denna konstruktor ska sätta bostadsytan till 100 m 2 och antalet rum till 4. public Bostad(double inbostadsyta, int inantalrum) Denna konstruktor ska föra över parametrarnas värde till attributen i klassen. Bostad bostad1 = new Bostad(); Bostad bostad2 = new Bostad(55,2); System.out.println(bostad1.toString()); System.out.println(bostad2.toString()); Ger utskriften Bostad med ytan m2 och 4 rum. Bostad med ytan 55.0 m2 och 2 rum. - bostadsyta:double - antalrum:int Bostad + Bostad() + Bostad(double, int) + setbostadsyta(double) + setantalrum(int) + getbostadsyta():double + getantalrum():int + tostring():string + kvmperrum() : double +jämförbostadsyta(bostad b) : double + copybostad() : Bostad + flestrum(bostad b) : Bostad Extrametod public Bostad copybostad() Metoden ska returnera en kopia av aktuellt objekt. Uppgift 7 Komplettera klassen Vara med följande metoder: public boolean slut() Metoden ska returnera true om det finns minst ett exemplar av varan. Annars ska metoden returnera false. public Vara billigast(vara v) Metoden ska returnera en referens till den billigaste varan. Komplettera klassen Vara med följande konstruktorer: public Vara(String namn, double pris, int antal) Denna konstruktor ska föra över parametrarnas värde till attributen i klassen. public Vara(Vara v) Denna konstruktor ska föra v:s värde (på attributen) till attributen i klassen. Denna kosntruktor kallas ibland för kopieringskonstruktor. Det nya objektet blir en kopia av objektet som används som argument. Vara vara1 = new Vara("Standardmjölk", 8.20, 120); Vara vara2 = new Vara(vara1); vara2.setpris(8.45); System.out.println(vara1.toString()); System.out.println(vara2.toString()); Ger utskriften Standardmjölk: Pris=8.20 kr Antal=120 Standardmjölk: Pris=8.45 kr Antal=120 5
6 Uppgift 8 I denna uppgift ska du arbeta med klassen Anstalld. Lägg till följande konstruktorer i klassen: public Anstalld(String namn, String arbetsgivare, double lön) Denna konstruktor ska föra över parametrarnas värde till attributen i klassen. public Anstalld(String namn) Denna konstruktor ska skapa objektet anropa konstruktorn Anstalld(String, double). public Anstalld(String namn, double lön) Denna konstruktor ska skapa objektet anropa konstruktorn Anstalld(String, String, double). Anstalld a1=new Anstalld("Rut Andersson"); Anstalld a2=new Anstalld("Ragnar Olsson",20000); Anstalld a3=new Anstalld("Ragnar Olsson","Gambro", 23000); String res = a1.tostring() + "\n" + a2.tostring() + "\n" + a3.tostring(); javax.swing.joptionpane.showmessagedialog( null, res ); Ger körresultatet 6
7 Lösningsförslag package laboration8; public class Anstalld { private String namn; private String arbetsgivare; private double lön; public void setnamn(string n) { this.namn = n; public void setarbetsgivare(string a) { this.arbetsgivare = a; public void setlön(double l) { this.lön = l; public String getnamn() { return this.namn; public String getarbetsgivare() { return this.arbetsgivare; public double getlön() { return this.lön; public String tostring() { return (this.namn + " har anställning hos " + this.arbetsgivare + " med lönen " + this.lön + "."); package laboration8; public class Bostad { private double bostadsyta; private int antalrum; public void setbostadsyta(double yta) { this.bostadsyta = yta; public void setantalrum(int antal) { this.antalrum = antal; public double getbostadsyta() { return this.bostadsyta; public int getantalrum() { return this.antalrum; 7
8 public String tostring() { return "Bostad med ytan " + this.bostadsyta + " m2 och " + this.antalrum + " rum."; public static void main(string[] args) { Bostad bostad1 = new Bostad(); Bostad bostad2 = new Bostad(); bostad1.setbostadsyta(55); bostad1.setantalrum(2); bostad2.setbostadsyta(108.6); bostad2.setantalrum(4); System.out.println(bostad1.toString()); System.out.println("Yta: " + bostad2.getbostadsyta() + " m2" + " Antal rum: " + bostad2.getantalrum()); package laboration8; import javax.swing.*; public class Vara { private String namn; private double pris; private int antal; public void setnamn(string varunamn) { this.namn = varunamn; public void setpris(double varupris) { this.pris = varupris; public void setantal(int antalvaror) { this.antal = antalvaror; public String getnamn() { return this.namn; public double getpris() { return this.pris; public int getantal() { return this.antal; public String tostring() { String res = this.namn + ": Pris=" + String.format( "%1.2f", this.pris ) + " kr Antal=" + this.antal; return res; public static void main(string[] args) { Vara envara = new Vara(); envara.setnamn("standardmjölk"); 8
9 envara.setpris(8.20); envara.setantal(120); JOptionPane.showMessageDialog( null, envara.tostring() ); envara.setnamn("7-växlad Crescent"); JOptionPane.showMessageDialog( null, envara.getnamn() + ": Pris=" + String.format( "%1.2f", envara.getpris() ) + " kr Antal=" + envara.getantal() ); // Uppgift 4 public double årslön() { return 12 * this.lön; public boolean sammaarbetsgivare(anstalld a) { return this.arbetsgivare.equals(a.getarbetsgivare()); // Uppgift 5 public double jämförbostadsyta(bostad b) { return this.bostadsyta - b.getbostadsyta(); public double kvmperrum() { return this.bostadsyta / this.antalrum; // Extrauppgift public Bostad flestrum(bostad b) { if(this.antalrum < b.antalrum) return b; return this; // Uppgift 6 public Bostad() { this.bostadsyta = 100; this.antalrum = 4; public Bostad(double bostadsyta, int antalrum) { this.bostadsyta = bostadsyta; this.antalrum = antalrum; // Extrauppgift public Bostad copybostad() { return new Bostad( this.bostadsyta, this.antalrum ); // Uppgift 7 public boolean slut() { return this.antal==0; public Vara billigast(vara v) { if(this.pris <= v.getpris()) return this; return v; 9
10 public Vara(String namn, double pris, int antal) { this.namn = namn; this.pris = pris; this.antal = antal; public Vara(Vara v) { this(v.getnamn(), v.getpris(), v.getantal()); // Uppgift 8 // Arbetsgivare: Okänd, Lön: 0 public Anstalld(String namn) { this( namn, 0 ); // Arbetsgivare: Okänd public Anstalld(String namn, double lön) { this( namn, "Okänd arbetsgivare", lön ); public Anstalld(String innamn, String inarbetsgivare, double inlön) { this.namn = innamn; this.arbetsgivare = inarbetsgivare; this.lön = inlön; 10
Malmö högskola 2007/2008 Teknik och samhälle
Laboration 8 Avsikten med denna laboration är att du lära dig skapa objekt med hjälp av klasser. Detta är en introduktion till ett objektorienterat tankesätt. Med hjälp av detta tankesätt kan du så småningom
Malmö högskola 2007/2008 Teknik och samhälle
Laboration 9 Avsikten med denna laboration är att du ska jobba vidare med klasser. Uppgifterna går ut på att skriva metoder och att skriva konstruktorer. Laborationen bygger vidare på laboration 8. Skapa
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
Föreläsning 5 (6) Metoder. Metoder Deklarera. Metoder. Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc
Föreläsning 5 (6) Metoder Metoder Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc Metoder Deklarera public void setnamn(string n) Åtkomstmodifierare Returtyp
Objektorientering. Objekt och metoder. Objektorientering. Viktiga begrepp. Klass. Objekt. Deklarativ programmering
och metoder Introduktion till objektorienterad programmering Markus Saers markus.saers@lingfil.uu.se orientering Deklarativ programmering Beskriver förutsättningarna för något Prolog Imperativ programmering
Laboration 13, Arrayer och objekt
Laboration 13, Arrayer och objekt Avsikten med denna laboration är att du ska träna på att använda arrayer. Skapa paketet laboration13 i ditt laborationsprojekt innan du fortsätter med laborationen. Uppgift
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.
1 Uppgift 1 Klassen Company Banken FinanceTrust som tidigare bara haft privatpersoner som kunder vill nu bygga ut sitt datasystem så att även företag kan registreras som kunder. Skriv klassen Company som
Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten?
Programmeringsteknik och Matlab Övning 4 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
Laboration A Objektsamlingar
Laboration A Objektsamlingar Avsikten med laborationen är att du ska träna på att använda ett par objektsamlingar. Uppgift 1 Titta genom föreläsningsunderlaget DA129AFAHT07.pdf och testkör exemplen (se
JAVAUTVECKLING LEKTION 11
JAVAUTVECKLING LEKTION 11 2016 Mahmud Al Hakim mahmud.al.hakim@nackademin.se www.alhakim.se AGENDA Mer om klasser och objekt Statiska/instans-metoder Överlagrade metoder Inkapsling Konstruktorer 1 UPPGIFT
Laboration 1 - Grunderna för OOP i Java
Uppdaterad: 2006-08-31 Laboration 1 - Grunderna för OOP i Java Inledning Laborationen går ut på att lära sig grunderna för objektorienterad programmering, samt motsvarande språkkonstruktioner i Java. Labben
TENTAMEN OOP
TENTAMEN OOP 2014-03-15 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
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-06-11 Skrivtid: 08:00 13: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.
Att deklarera och att använda variabler. Föreläsning 10. Synlighetsregler (2) Synlighetsregler (1)
Föreläsning 10 STRING OCH STRINGBUILDER; VARIABLERS SYNLIGHET Att deklarera och att använda variabler När vi deklarerar en variabel, t ex int x; inför vi en ny variabel med ett namn och en typ. När namnet
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
Java, klasser, objekt (Skansholm: Kapitel 2)
Java, klasser, objekt (Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Objectorienterad programmering Sida 1 Vad är en klass? En klass är ett sätt att beskriva en mängd objekt och deras gemensamma
Lösningsförslag övning 2.
Objektorienterad programmering, Z1 Lösningsförslag övning 2. Uppgift 1. public class SIUnits { public static double yardspermeter = 1.093613; public static double poundperkilo = 2.204623; public static
public och private Obs: private inte skyddar mot access från andra objekt i samma klass.
public och private En metod som är public får anropas från alla metoder i alla klasser. Ett attribut som är public får avläsas och ändras från alla metoder i alla andra klasser. En metod som är private
Fält av referenser. Konstruktorerna används för att skapa Bilar och Trafikljus.
Fält av referenser Tanken med objekt är man kan bygga ihop olika sorts objekt till nya saker. Sålunda kan man exempelvis använda Bil och Trafikljus att konstruera ett Väg-objekt. Om Bil och Trafikljus
TENTAMEN OOP
TENTAMEN OOP 2013-08-08 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
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
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 2016-03-17 Skrivtid: 1400 1900 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
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
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
Föreläsning 5-6 Innehåll. Exempel på program med objekt. Exempel: kvadratobjekt. Objekt. Skapa och använda objekt Skriva egna klasser
Föreläsning 5-6 Innehåll Exempel på program med objekt Skapa och använda objekt Skriva egna klasser public class DrawSquare { public static void main(string[] args) { SimpleWindow w = new SimpleWindow(600,
Kort om klasser och objekt En introduktion till GUI-programmering i Java
Kort om klasser och objekt En introduktion till GUI-programmering i Java Klasser En klass är en mall för hur man ska beskriva på något. Antag att vi har en klass, Bil. Den klassen innehåller en lista på
Föreläsning 5-6 Innehåll
Föreläsning 5-6 Innehåll Skapa och använda objekt Skriva egna klasser Datavetenskap (LTH) Föreläsning 5-6 HT 2017 1 / 32 Exempel på program med objekt public class DrawSquare { public static void main(string[]
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-06-11 Skrivtid: 08:00 13: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.
DD1342 Programkonstruktion för F1,
DD1342 Programkonstruktion för F1, 2007-2008 Lappskrivning 2 Tisdag 5/2 2008 kl 14.15 15.00 Endast ett svar är rätt på varje fråga! Om mer än ett svar givits blir det noll poäng på frågan. Alla skriftliga
2 b) Följande finns definierat: public class Käk String titel = "Chili con carne"; Krydda[] kryddor = new Krydda[10]; kryddor[0] = new Krydda("Svartpe
Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för I1, K2, L1, M1, Media1 och T1. Tentamen (1p) 6 april 2002, kl 14.00 17.00 Hjälpmedel: En javabok(det blå javahäftet som ingår i kursbunten räknas
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
Inkapsling tumregler. Åtkomstmodifikatorer, instantiering, referenser, identitet och ekvivalens, samt klassvariabler. public och private
Inkapsling tumregler Åtkomstmodifikatorer, instantiering, referenser, identitet och ekvivalens, samt klassvariabler Tobias Wrigstad (baserat på material från Tom Smedsaas) 5 november 2010 1. Man skall
2I1049 Föreläsning 5. Objektorientering. Objektorientering. Klasserna ordnas i en hierarki som motsvarar deras inbördes ordning
2I1049 Föreläsning 5 Objektorienterad programmering i Java KTH-MI Peter Mozelius Objektorientering Världar uppbyggda av objekt Inte helt olikt vår egen värld Ett sätt att modularisera våra system Objekten
Variabler som hör till enskilda objekt. Deklareras på översta nivån i klassen och i regel som private.
Tentamen Programmeringsteknik I 2013-06-14 med lösningar 1. Svara kortfattat på följande: a) Vad är en instansvariabel? Variabler som hör till enskilda objekt. Deklareras på översta nivån i klassen och
2 b) Följande finns definierat: public class Spel String titel = "Spel"; Dice[] tärningar = new Dice[10]; tärningar[0] = new Dice("Röd"); tärningar[1]
Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B2 och V1. Tentamen (1p) 12 januari 2002, kl 14.00 17.00 Hjälpmedel: En javabok(det blå javahäftet som ingår i kursbunten räknas som en javabok.
2 b) Följande finns definierat: import java.awt.*; public class Uppgift1b public static void main(string[] mupp) Color färg = Color.blue; Bil[] bilar
Namn: Personnr: 1 2D1310 Programmeringsteknik i Java Tentamen (1p) den 22:a augusti 2002, kl 14.00 17.00 Hjälpmedel: En javabok(det blå javahäftet som ingår i kursbunten räknas som en javabok). Förklarande
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
OOP Objekt-orienterad programmering
OOP F5:1 OOP Objekt-orienterad programmering Föreläsning 5 Klasser och objekt Skapa objekt - new Referenser Konstruktorer Inkapsling Vi skall nu titta på ett exempel med myror. Varje myra har ett namn
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 2016-06-11 Skrivtid: 0900 1400 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
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 2016-03-17 Skrivtid: 1400 1900 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
Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling
metoder Föreläsning 2 Objektorienterad programmering DD1332 Array [modifierare] String metodnamn (String parameter) Returtyp (utdata typ) i detta fall String Indata typ i detta fall String 1 De får man
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.
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
Del A (obligatorisk för alla)
Del A (obligatorisk för alla) A1. Koden följer garanterat namnkonventionerna. Ringa in rätta svar och lämna in tillsammans med dina övriga svar! a) Hur många objekt skapas av följande kod? World w = new
TDDE10 TDDE11, 725G90/1. Objektorienterad programmering i Java, Föreläsning 2 Erik Nilsson, Institutionen för Datavetenskap, LiU
TDDE10 TDDE11, 725G90/1 Objektorienterad programmering i Java, Föreläsning 2 Erik Nilsson, Institutionen för Datavetenskap, LiU På denna föreläsning: Introduktion OOP Instanser, instansvariabler, instansmetoder
Tentamen i Programmeringsteknik I
Tentamen i Programmeringsteknik I 2016-10-17 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
Laboration 16. Uppgift 1
Laboration 16 Avsikt Avsikten med denna laboration är att öva på arv i objektorienterad programmering. Du ska skapa en klasshierarki som ser ut som figuren till höger: Fordon MotorFordon Bil Motorcykel
TUTORIAL: KLASSER & OBJEKT
TUTORIAL: KLASSER & OBJEKT I denna tutorial lär vi oss att använda klasser och objekt samt hur vi bygger en enkel applikation kring dessa. I tutorialen kommer det finnas en mängd kod som du antingen kan
Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2
AID-nummer: Datum: 2014-12-18 Kurskod: 725G61 Provkod: LAB1 Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2 Skrivningstid: 2014-12-18 klockan 8.00-10.00. Hjälpmedel: Inga. För varje fråga
JAVA Mer om klasser och objektorientering
JAVA Mer om klasser och objektorientering Begreppet package - paket Package används när man t ex vill skapa ett eget bibliotek med klasser. Sen är det då meningen att man ska importera detta paket i det
LÖSNINGSFÖRSLAG TENTAMEN
LÖSNINGSFÖRSLAG TENTAMEN OBJEKTORIENTERAD PROGRAMMERING I JAVA 5P FRISTÅENDE KURS, DAG (ITM - ÖSTERSUND) MÅNDAG 2 JUNI, 2003, KL. 8-13 TID: 5 TIMMAR ANTAL UPPGIFTER: 8 MAX POÄNG: 43 BETYGSKALA: UNDERKÄND
Administrativt. Programmeringsteknik för I1. Dagens program. Objektorienterad programmering
Programmeringsteknik för I1 Övning 2 Administrativt Övningsgrupp 2 (Sal E32/D32) Johannes Hjorth hjorth@nada.kth.se Rum 4538 på plan 5 i D-huset 08-790 69 02 Kontrollera att ni har fått Lab2 inrapporterad
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
Modeller, Objekt och Klasser
Modeller, Objekt och Klasser Bildserie 3 Objekt Orienterad Programmering OO-programmering bygger på att vi som människor uppfattar tillvaron i termer av objekt - Bastu, pizza, öl,... Det borde vara lättare
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
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 2017-03-16 Skrivtid: 0800 1300 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
(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java
(Man brukar säga att) Java är... Denna föreläsning Allmänt om Java Javas datatyper, arrayer, referenssemantik Klasser Strängar enkelt baserat på C/C++ objekt-orienterat från början dynamiskt utbyggbart
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
DD2385 Programutvecklingsteknik Några bilder till föreläsning 1 24/ Kursöversikt Javarepetition/Javaintroduktion
DD2385 Programutvecklingsteknik Några bilder till föreläsning 1 24/3 2014 Innehåll Kursöversikt Javarepetition/Javaintroduktion UML - klassdiagram-introduktion i anslutning till Java-exemplen Kursmål,
Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C.
Idag Javas datatyper, arrayer, referenssemantik Klasser Arv, polymorfi, typregler, typkonvertering Strängar Tänker inte säga nåt om det som är likadant som i C. Objectorienterad programmering Sida 1 Ett
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
Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Föreläsning 3 Innehåll Lite om felhantering och Exceptions Mer om variabler och parametrar
Dagens föreläsning. Arrayer och klasser. Medan ni väntar: Gå till m.voto.se/prog11 och svara på några gamla tentamensfrågor! (26 januari 2018 F3 1 )
(26 januari 2018 F3 1 ) Dagens föreläsning Arrayer och klasser Medan ni väntar: Gå till m.voto.se/prog11 och svara på några gamla tentamensfrågor! (26 januari 2018 F3 2 ) Arrayer En array är en datatyp
TDDE10 TDDE11, 725G90. Objektorienterad programmering i Java, Föreläsning 2 Erik Nilsson, Institutionen för Datavetenskap, LiU
TDDE10 TDDE11, 725G90 Objektorienterad programmering i Java, Föreläsning 2 Erik Nilsson, Institutionen för Datavetenskap, LiU På denna föreläsning: Introduktion OOP Instanser, instansvariabler, instansmetoder
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.
1 Uppgift 1 Klassen Company Banken FinanceTrust som tidigare bara haft privatpersoner som kunder vill nu bygga ut sitt datasystem så att även företag kan registreras som kunder. Skriv klassen Company som
Bankkonto - övning. Övning 2 Skriv en metod, geträntan, som returnerar räntan.
Bankkonto - övning Övningar att göra efter lärardemostration. Filen bankkonto.zip innehåller ett projekt med klassen Bankkonto. Zippa upp denna fil och öppna projektet i BlueJ och skriv vidare på klassen
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 2017-10-23 Skrivtid: 0800 1300 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
Tentamen i Programmeringsteknik I
UPPSALA UNIVERSITET Institutionen för Informationsteknologi Tentamen i Programmeringsteknik I 091211 Skrivtid: 8-11 Hjälpmedel: Lewis & Loftus, Java Software Solutions eller Skansholm, Java Direkt med
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
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();
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 2012-03-14 Skrivtid: 0800-1100 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
Vad är ett objekt? Tillstånd och beteende. Vad är ett objekt? Exempel
Objekt Instansvariabler Instansmetoder Klassvariabler Klassmetoder Inkapsling Föreläsning 6 Vad är ett objekt? Ett objekt har egenskaper, som kallas för objektets attribut Egenskaperna beskriver tillsammans
Subklasser och arv Inledning till grafik (JFrame och JPanel). Något om interface. Objektorienterad programvaruutveckling GU (DIT011) Subklasser
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Föreläsning 5 Innehåll Subklasser och arv Inledning till grafik (JFrame och JPanel).
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 2017-10-23 Skrivtid: 0800 1300 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
Chapter 4: Writing Classes/ Att skriva egna klasser.
Chapter 4: Writing Classes/ Att skriva egna klasser. I dessa uppgifter kommer du att lära dig om hur man definierar egna objekt genom att skriva klasser. Detta är grunden för att förstå objekt orienterad
Laboration 24 Databasen MySQL och java
Laboration 24 Databasen MySQL och java Avsikten med denna laboration är att du ska hämta information ur en eller flera tabeller och visa resultatet i en JTable-komponent. Du ska ändra innehållet i tabellen
Uppgiften är att beskriva en kvadrat i ett Java program. En första version av programmet skulle kunna se ut så här:
Att skapa en klass kvadrat Uppgiften är att beskriva en kvadrat i ett Java program. En första version av programmet skulle kunna se ut så här: public class Kvadrat { private int sida; Det var väl inte
Objektorienterad programmering Föreläsning 5
Objektorienterad programmering Föreläsning 5 Copyright Mahmud Al Hakim mahmud@dynamicos.se www.webbacademy.se Agenda UML Övning Mer om metoder Standardklassen String Konstruktorer Överlagrade metoder Standardklassen
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 2012-06-04 Skrivtid: 1400-1700 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
EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.
EDAA20 Programmering och databaser Mål komprimerat se kursplanen för detaljer Läsperiod 1 7.5 hp anna.aelsson@cs.lth.se http://cs.lth.se/edaa20 Mer information finns på kursens webbsida samt på det utdelade
Malmö högskola 2012/2013 Teknik och samhälle
Laboration 5 Avsikten med laborationen är att du ska träna på att använda iterationer i dina program. I vanlig ordning placerar du dina lösningar i paketet laboration5. Uppgifterna är lätt matematiska
Föreläsning 8 Programmeringsteknik och Matlab 2D1312/2D1305. Klass Object, instans av klass public/private Klassvariabler och klassmetoder
Föreläsning 8 Programmeringsteknik och Matlab 2D1312/2D1305 Klass Object, instans av klass public/private Klassvariabler och klassmetoder 1 Array och ArrayList Arrayer och ArrayList är till för att innehålla
Objektorienterad Programmering DAT043
Objektorienterad Programmering DAT043 Föreläsning 3 22/1-18 Moa Johansson (delvis baserat på Fredrik Lindblads material) 1 Kom ihåg: Visa Javas API. Nämn att slidesens också har tillhörande text på kurshemsidan.
Objekt och referenser
Objekt och referenser Antag att vi har följande enkla klass: public class Person { private String namn; private String adress; private String personnummer; public Person() { namn = NN ; adress = ; personnummer
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
Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B,V (1p) 13 januari 2001, kl Hjälpmedel: En Javabok. För betyget godkänt krävs at
Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B,V (1p) 13 januari 2001, kl 14.00 17.00 Hjälpmedel: En Javabok. För betyget godkänt krävs att a- eller b-delen av varje fråga (uppgift 1 4) samt
Tentamen i Programmeringsteknik I,, KandMa/Fy,
Tentamen i Programmeringsteknik I,, KandMa/Fy, 2010-10-19 Skriv tid: 14-17. Hjälpmedel: 1. Kurslitteratur, en av följande: Lewis & Loftus, Java Software Solutions Skansholm, Java Direkt Guzdial & Ericson,
Mer om klasser och objekt
Klassvariabler och klassmetoder En klass kan innehålla klassvariabler och klassmetoder. TDA143 I1 Programmerade system Föreläsning 5 (OH-bilder 5) Mer om klasser och objekt Christer Carlsson Det som skiljer
OOP Objekt-orienterad programmering
OOP F9:1 OOP Objekt-orienterad programmering Föreläsning 9 Arv och klasshierarkier Polymorfism OOP F9:2 Djur - String namn - int vikt + String getnamn() + int getvikt() + void ökavikt(int x) Ko - int mjölkvolym
2 b) Bodega bodegan = new Bodega(); double moms = 0.235; String namn = "Vargtass"; System.out.println(namn + " " + moms + bodegan.ändra(moms, namn); S
Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för M1, K2, Media1 och I1 (1p) 16 december 2000 Hjälpmedel: En Javabok. System.out är ett objekt kopplat till skärmen, dvs samma sak som i labbarna
2203$( Föreläsning ii - Mer om Java bla this och konstruktorer. Exempel: lampa
2203$( Föreläsning ii - Mer om Java bla this och konstruktorer Av Björn Eiderbäck Email: bjorne@nada.kth.se Adress: Rum 1641, 6tr NADA Osquars Backe 2 Tel: 7906277 previous next Exempel: lampa Light1 #
Malmö högskola 2008/2009 CTS
Laboration 5 Avsikten med laborationen är att du ska träna på att använda iterationer i dina program. I vanlig ordning placerar du dina lösningar i paketet laboration5. Uppgifterna är lätt matematiska
Exempel på program med objekt Klass med main-metod. Föreläsning 3-4 Innehåll. Övning Viktiga begrepp
Föreläsning 3-4 Innehåll Eempel på program med objekt Klass med main-metod Klasser Implementera (skriva programkod för) egna klasser Datatper Undervisningsmoment: föreläsning 3-4 övning 2 laboration 3-5
OOP Objekt-orienterad programmering
OOP F4:1 OOP Objekt-orienterad programmering Föreläsning 4 Metoder klass-metoder instans-metoder Metoder - subrutiner OOP F4:2 Kod som utför en viss operation. Ligger i olika klasser och anropas via operatorn.
Laboration 3. Uppgift 1
Laboration 3 Avsikt Avsikten med denna laboration är att öva på arv i objektorienterad programmering. Du ska skapa en klasshierarki som ser ut som figuren till höger: Vehicle MotorVehicle Car Motorcycle
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
Föreläsningsmaterial (Arv) Skrivet av Andreas Lund
Föreläsningsmaterial (Arv) Skrivet av Andreas Lund Inledning Arv är ett begrepp som är tätt förknippat med objektorientering. Principerna bakom arv är grundade i högst vardagliga relationer mellan olika
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)
OBJEKTORIENTERAD PROGRAMVARUUTVECKLING. Övningstentamen 1
Institutionen för Data- och informationsteknik JSk TENTAMEN OBJEKTORIENTERAD PROGRAMVARUUTVECKLING Övningstentamen 1 OBS! Det kan finnas kurser med samma eller liknande namn på olika utbildningslinjer.
Kort repetition. Programmeringsteknik för Bio1 och I1. Vad ska vi lära oss idag? Ett exempel
Programmeringsteknik för Bio1 och I1 Övning 2 Kort repetition Övningsgrupp 3 (Sal E33) 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/2d1310/