Objektorientert programmering

Slides:



Advertisements
Liknende presentasjoner
Repetisjon innkapsling static tabell av primitiv datatype LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring.
Advertisements

Tabeller av objekter Klassen ArrayList
14 okt. 2003, Arne Maus Inst. for informatikk, UiO
C++ for Java-programmerere
Datafiler og serialisering Tekstfiler Scanner-klassen Binær overføring av data Direkte tilgang til filinnholdet Serialisering LC191D Videregående programmering.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Uke 10 - Sortering, og hvordan lage en klasse for et klassebibliotek 21 okt. 2003, Arne Maus Inst. for informatikk, UiO.
Uke 8 - Mer om: Objekter, klasser og pekere
Polymorfi og arv, del 1 LC191D Videregående programmering Semesterplan: Høgskolen i Sør-Trøndelag, Avdeling.
1 Java 6 Mer om metoder Tekster Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo.
Programmering i Java versjon januar 2005 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
1 Litt om OO og programmering Arne Maus. 2 OO og Java (og C++, C#)  Arven fra Simula  Programstruktur i Java  Generering av objekter  Beskyttelse.
Samarbeid mellom objekter
Java 12 Mer filbehandling - skrive til fil HashMap Et større eksempel Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Java 4 Mer om forgreninger While-løkker Ole Christian Lingjærde
Objekt, Instanser og referanser + litt til. Objekter  Instanser  En instans er et objekt av en bestemt klasse  Instanser blir laget ved å kalle klassens.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Objektorientert programmering Objektorientert systemutvikling
Java 14 Et eksempel fra bioinformatikk: analyse av biologiske sekvenser Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
IS-102 Klassedefinisjoner
Oblig4 - forklaringer Arne og Ole Christian.
Eiendomregister mars 2002 Arne Maus. import java.util.*; import inf101.*; /* Klasse med main() som starter hele programmet */ class EiendomsregisterMain.
C# for javaprogrammerere
En gang til!? .
Objekt Orientert Programmering (OOP). Objektorientering (OO)1/6 Objektorientering er en grunnleggende måte å organisere komplekse fenomener på.
Web-applikasjoner Prosjekt3 Logging Gruppe 9 Malik Muhammad Naeem Kevan Qureshi.
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Uke 7 - del I: Repetisjon del II: Objekter, klasser og pekere 30 sept. 2003, Arne Maus Inst. for informatikk, UiO.
Java 3 Mer om uttrykk Terminal I/O Forgreninger
Java 11 Programmering med og uten objekter: hva er forskjellen?
OOT Seminar H-97 CORBA Praktisk del. Valg av ORB implementasjon n Har valgt å bruke Visigenic sin ORB implementsjon n ORB’en er 100% Java kodet n Bygger.
Arv og polymorfi, del 3 Modifikatoren abstract side 2-3
Å lese tall fra en fil, klassen Scanner 1.Et Scanner-objekt kan knyttes til et strømobjekt eller til en streng. 2.Kan skanne teksten etter data av ulike.
Programmering sif8005. Praktisk informasjon  Innleveringsfrist øvinger: mandag kl  Alle øvinger er obligatoriske  Studass tilgjengelig 6 timer.
02 - Java datatyper Grundlæggende om datatyper og variable.
Tabeller Dette er en tabell, eller array. Den kan defineres sånn som dette: public int[] heltallsTabell = new int[11]; //Her er 11 tabellens lengde for.
INF1000 (Uke 14) Resten av eksamen H03 + del av V05 Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Are Magnus Bruaset og Anja B.
INF1000 (Uke 13) Resten av eksamen H03 + del av V05 Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Are Magnus Bruaset og Arild.
Objekt, Instanser og referanser + litt til. Objekter  Instanser  Kan sees på som det samme. Personen Per kan være både et objekt og en instans av klassen.
Indledende Datalogi /kelk 1 Need to know Løkker Klasser, instanser og Objekter Hvorfor objektorientering? Scope – hvor erklæres en variabel? ”Access Modifiers”
Main metoden n public static void main(String[] args){ } n Inni denne metoden skjer alt! n Det kan bare finnes en main metode per program. n Den kan ligge.
INF Objektorientert programmering
Programmering i Java versjon september 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Object  Klassen i java  Alle klasser arver fra denne om ikke noe annet blir spesifisert  ArrayList.add(Object instans)  Alle elementer formes til Object.
Ekstra mange tips til Oblig 3! 12. mars 2007 Are Magnus Bruaset og Arild Waaler Inst. for informatikk, UiO.
INF1000 (Uke 14) Eksamen V06 Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Are Magnus Bruaset og Arild Waaler.
Byggeklosser i java  Klassedefinisjon  Variabel deklarasjon  Metodedeklarasjoner  En ordentlig klasse  Spesielle/kryptiske skrivemåter  løkker og.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
1 Inf1000 (Uke 10) Oppgaveløsning. Hashmap Programmering med og uten objekter: hva er forskjellen? Noen generelle råd vedrørende oppgaveløsing HashMap.
Inf1000 (Uke 10) HashMap og ArrayList
INF1000 (Uke 4) Mer om forgreninger, While-løkker
Inf1000 (Uke 5) Arrayer, filer og tekst
INF1000 (Uke 11) Programmering
Variabler, datatyper og uttrykk
Triks Avslutt alle klasser, metoder og løkker samtidig som du lager dem. Deklarer alle variablene/referansene på begynnelsen av klassen. Hvis du definerer.
IS-102 Interaksjon med objekter
BilSalg klassedatastruktur Bil klassedatastruktur
BilSalg klassedatastruktur Bil klassedatastruktur
Utskrift av presentasjonen:

Objektorientert programmering Vi skal se på innholdet i de ulike delene i programutviklingsprosessen og hvordan de henger sammen Vi viser hvordan enkelte av de ulike delene hører sammen ved hjelp av ulike fargekombinasjoner Siden vi bare kjenner til ett UML-diagram, nemlig Klassediagram, bruker vi dette i eksemplet I hvilken del av prosessen på figuren til venstre hører disse begrepene hjemme: klasse, hovedprogram, objektvariabler, innlesing av data fra bruker, oppretter objekter, skriver ut data, konstruktør, finn-metoder, sett-metoder, uml-diagram, metodekall, argumenter, parametre Problembeskrivelse Klassediagram Programkode for klassen Klientprogram

Programkode for klassen Problembeskrivelse Den lokale nærbutikken har gitt deg i oppdrag å lage et enkelt eksempel på et program for et moderne kassaapparat. For at du skal ha et utgangspunkt for programmet har kjøpmannen satt opp følgende beskrivelse av hva han vil ha. Kjøpmannen ønsker et program som lagrer navn, varenummer og kilopris for de ulike varene i butikken. Alle kilopriser for en bestemt vare oppgis uten moms. Når prisen for en vare skal beregnes trenger du en metode som beregner prisen uten moms og en metode som beregner prisen med moms. For å finne prisen på en vare må du multiplisere kiloprisen med antall kilo. Varenavn og prisen på de ulike varene både med og uten moms, samt totalsummen skal skrives ut på kassalappen til kunden. Momsen regnes for å være fast på 13 % (matmoms). Lag et lite, enkelt klientprogram som tester Vareklassen Problembeskrivelse Klassediagram Programkode for klassen Klientprogram

Programkode for klassen Klassediagram Vare Problembeskrivelse varenavn varenummer pris pr kg uten moms Klassediagram finn vareNavn finn pris for et gitt antall kilo uten moms finn pris for et gitt antall kilo med moms Programkode for klassen Klassediagrammet er satt på bakgrunn av hva som er beskrevet i problembeskrivelsen Klientprogram

Programkode for klassen class Vare { private static final double moms = 13.0; private static final double momsfaktor = 1.0 + moms / 100.0; private String varenavn; private int varenr; private double pris; // pris pr kilo, alltid uten moms public Vare(String startVarenavn, int startVarenr, double startPris) { varenavn = startVarenavn; varenr = startVarenr; pris = startPris; } public String fNavn() { return varenavn; } public double fPrisUMva(double antKilo) { return pris * antKilo; } public double fPrisMMva(double antKilo) { return pris * antKilo * momsfaktor; } } Problembeskrivelse Klassediagram Programkode for klassen Klientprogram

Programkode for klassen Klientprogram class vareTest { public static void main(String[] args) { final double antk = 2.5; final double, kilopris1 = 73.50; final double kilopris2 = 79.60; Vare vare1 = new Vare("Norvegia", 100, kilopris1); Vare vare2 = new Vare(”Smør", 200, kilopris2); System.out.println(vare1.fNavn() + vare1.fPrisUMva(antk) + vare1.fPrisMMva(antk) ); System.out.println(vare2.fNavn() +vare2.fPrisUMva(antk) + vare2.fPrisMMva(antk) ); int sumMMva = vare1.fPrisMMva(antk) + vare1.fPrisMMva(antk); System.out.println(”Totalprisen for alle varene med moms : ” + sumMMva); } Problembeskrivelse Klassediagram Programkode for klassen Klientprogram