IS-102 Klassedefinisjoner

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.
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
1 Java 6 Mer om metoder Tekster Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo.
XMLSchema.  Innledende eksempler: Tove 4. Janni 5. Huskelapp 6. Ikke glem avtalen til helgen 7. Vi har sett DTD’en til dette xml dok. Her kommer.
Etter forarbeidet og dagen i dag er målet at dere skal kunne:
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.
Programmering i Java versjon januar 2005 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Java 12 Mer filbehandling - skrive til fil HashMap Et større eksempel Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet.
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
Objektorientert programmering i PHP del 2
#include Ligner litt på import i java. Setter inn hele fila stdio.h i programteksten. Definerer en del io funksjoner slik at signaturen er kjent. I dette.
© Lars-Erik Kindblad.  Et platformuavhengig verktøy for å automatisere build prosesser.  Støttes og drives av Apache Software Foundation.  Kommer ferdig.
C# for javaprogrammerere
Aksess kontroll None shall pass.
Generelt I/O if/else Funksjoner Lists Løkker Dictionaries Annet Listebehandling Klasser Python med noen algdat-anvendelser Åsmund Eldhuset asmunde *at*
En gang til!? .
Operativsystemer.  Tilstandsmaskiner kalles på engelsk Finite State Machines.  Tilstandsmaskiner er en metode til å beskrive systemer med logisk og.
Filer Finne minste Finne Største Beregne gjennomsnitt Variabler Tabeller – Arrays Lage frekvenstabell.
Feilhåndtering. Feil er uunngåelige! Erfaring viser at feil i dataprogrammer som består av mer enn noen få linjer ikke er til å unngå. For å få et godt.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 2.10 Default values – standardverdier ved oppstart MER OM: Sub-prosedyrer og sub-funksjoner.
Gjennomgang av prøven Tidsangivelse. Prøven deles ut Vi fyller ut øvelsen sammen.
INF150 Programmering mandag 11.9
Hva er en robot? Roboter er mer enn maskiner som ligner mennesker.
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 desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Repetisjon av JSP Variabler, tabeller, if-setninger, for/while-løkker
Grunnleggende PHP - Ronny Mandal1 Grunnleggende PHP.
Dynamiske nettsider PHP Del 2 – Kontrollstrukturer.
Dynamiske nettsider PHP Del 1 – variable. PHP  PHP (Personal Home Page)  Fritt tilgjengelig programmeringsspråk  åpen kildekode  Plattformuavhengig.
Java 3 Mer om uttrykk Terminal I/O Forgreninger
Java 11 Programmering med og uten objekter: hva er forskjellen?
VI LAGER EN PLATEBUTIKK
Å 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.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 18.9 Lesing av data fra fil og skriving av data til fil. Side 411 – 4.. Kap 4.
Programmering sif8005. Praktisk informasjon  Innleveringsfrist øvinger: mandag kl  Alle øvinger er obligatoriske  Studass tilgjengelig 6 timer.
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.
1 Java Database Connectivity (JDBC) Norvald H. Ryeng
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.
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.
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.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 25.9 MER OM: Sub-prosedyrer og sub-funksjoner Kap 4.
INF1000 (Uke 4) Mer om forgreninger, While-løkker
Inf1000 (Uke 5) Arrayer, filer og tekst
Kapittel 4 Skriving av klasser. 4.1 Anatomien til ein klasse Så langt har vi brukt ferdige klasser frå klassebiblioteket i Java Vi lagar objekt og brukar.
Kapittel 5 Vilkårssetningar og løkker. 5.1 Boolske uttrykk George Boole ( ), britisk matematikar Utvikla teori om logikk ved bruk av symbol i.
Lokale variable Hvis vi trenger å ta vare på en verdi, inne i en metode kan vi definere en lokal variabel: int amount = 0; vi må fortelle hvilken type.
Kom i gang med Python Pål Hellesnes SYSTEMUTVIKLER
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 Utvikle ei klokke.
IS-102 Interaksjon med objekter
Spillutvikling Introduksjon til spillutvikling i Processing
Begynnerkurs i Python Realfagskonferansen 2019 Henrik H. Løvold
Siste uke med fokus på Python  Java
IN3030 – Effektiv parallellprogrammering Uke 1 2. del, våren 2019
Utskrift av presentasjonen:

IS-102 Klassedefinisjoner

Klasser og objekter – Hva vet vi? Vi kan bruke klassene til å lage objekter. Et objekt som er laget med en bestemt klasse tilhører klassen. Objektene har verdier knyttet til seg som kalles attributter (attributes, instance variables, properties) Objektene kan utføre bestemte handlinger ved hjelp av metoder (method, procedure, function) Objekter som tilhører samme klasse har de samme attributtene og metodene. Even Åby Larsen (even.larsen@uia.no) IS-102 Klassedefinisjoner

Grammatikk og konvensjoner Et java-program må følge grammatikkreglene for java for at kompilatoren skal godta det Et program som bryter grammatikken er ikke et gyldig program Konvensjoner er regler som vi følger for å gjøre programmet mer leselig for mennesker (f.eks. de som skal utvide det, eller rette feil senere) Vi har bl.a. konvensjoner for navngiving og bruk av innrykk Et program kan fungere selv om vi bryter konvensjonene, men det blir vanskeligere å lese, så sjansen for at det oppstår feil under vedlikehold blir større Even Åby Larsen (even.larsen@uia.no) IS-102 Klassedefinisjoner

Klassedefinisjoner Hver klasse har en definisjon Definisjonen finnes i en fil som heter KlasseNavn.java Klasser har navn som begynner med stor bokstav. Java-filen er en tekstfil, ikke et ferdig program: En kompilator er et program som oversetter java-filer til kjørbar (binær)kode. I BlueJ kan vi kjøre kompilatoren ved å trykke “Compile” knappen. Even Åby Larsen (even.larsen@uia.no) IS-102 Klassedefinisjoner

Klassedefinisjoner – innhold i KlasseNavn.java public class KlasseNavn { // definisjon av attributter // definisjon av konstruktører // definisjon av metoder } Klassedefinisjonen begynner med public class KlasseNavn {, og slutter med } Klassedefinisjonen inneholder definisjoner av attributter, konstruktører og metoder Even Åby Larsen (even.larsen@uia.no) IS-102 Klassedefinisjoner

Definisjon av attributter Attributter er et sted vi kan lagre verdier Hvert objekt (instans) som tilhører klassen får sine egne kopier av attributtene det er derfor de også kalles instansvariable Attributter defineres slik: private int attributtNavn; private/public bestemmer om attributt er tilgjengelig utenfor klassen int bestemmer hva slag verdi som kan lagres i attributtet et attributt kan bare ha verdier av en bestemt type (i dette tilfellet heltall) navnet bruker vi til å få tak i eller endre verdien til attributtet. attributter har navn med liten forbokstav (hvis navnet består av flere ord har alle unntatt det første stor forbokstav) Even Åby Larsen (even.larsen@uia.no) IS-102 Klassedefinisjoner

Datatyper Når vi programmerer skiller vi mellom forskjellige typer av verdier. Alle mulige verdier tilhører (minst) en type. Alle typene har navn. Eksempler: int – heltall, f.eks. 42 float, double – desimaltall, f.eks. 3.14 char – bokstaver og andre tegn, f.eks. 'a' boolean – logiske verdier, true eller false String – tekst, f.eks. "black" Even Åby Larsen (even.larsen@uia.no) IS-102 Klassedefinisjoner

Objekter og attributter Tilstanden til et objekt er bestemt av verdien til attributtene. I BlueJ kan vi se tilstanden til et objekt ved å høyreklikke objektet og velge “Inspect” Even Åby Larsen (even.larsen@uia.no) IS-102 Klassedefinisjoner