Kapittel 2 Data og uttrykk. 2.1 Strengar Ein tekststreng er eit objekt i Java, definert av String klassen Meir om denne klassen i kapittel 3 Vi bruker.

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
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.
@ TDT4120 Algoritmer og datastrukturer Trær og søking i dem, samt litt diverse emner Åsmund Eldhuset asmunde idi.ntnu.no.
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.
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.
IS-102 Klassedefinisjoner
C# for javaprogrammerere
@ TDT4120 Algoritmer og datastrukturer Trær og søking i dem, samt litt diverse emner Åsmund Eldhuset asmunde idi.ntnu.no.
Åsmund Eldhuset asmunde stud.ntnu.no folk.ntnu.no/asmunde/algdat/
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!? .
Kapittel 24 (Big Java 2.utg) Kommunikasjon i nettverk.
Gjennomgang av prøven Tidsangivelse. Prøven deles ut Vi fyller ut øvelsen sammen.
INF150 Programmering mandag 11.9
Kapittel 11 Rekursjon Å tenke rekursivt Rekursjon er ein programmeringsteknikk der ein metode kallar seg sjølv for å fullføre ei oppgåve For å kunne.
PHP oversikt. Basis egenskaper Grensesnitt med web tjener Skripttaggene Kommentartegn Ikke case sensitiv Avslutningstegn for instruksjoner.
Hvordan uttrykke krav Kapittel 4.4. Innledning Målet er å samles rundt ett entydig språk som ikke kan misforståes eller feiltolkes. Gjør sporbarheten.
Programmering i Java versjon desember 2002 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.
Objektorientert programmering
Repetisjon av JSP Variabler, tabeller, if-setninger, for/while-løkker
INF 295 Algoritmer og datastrukturer Forelesning 7 ADT Lister, Stakker og Køer Hans Fr. Nordhaug (Ola Bø)
Grunnleggende PHP - Ronny Mandal1 Grunnleggende PHP.
Java 3 Mer om uttrykk Terminal I/O Forgreninger
Å 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.
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.
Kapittel 6 Objektorientert design. 6.1 Programvareutvikling Skriving av kode ein liten del av arbeidet med å lage programvare Fire hovudaktivitetar Kravspesifikasjon.
Object  Klassen i java  Alle klasser arver fra denne om ikke noe annet blir spesifisert  ArrayList.add(Object instans)  Alle elementer formes til Object.
Introduksjon I tillegg til autentisering, bør/skal også ein sikker kanal tilby garanti for meldings- integritet og konfidensialitet.
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.
INF160 Videregående Programmering Hausten Om kurset Lærebok: Lewis & Loftus: Java software solutions, 4.utgåve utgåve inneheld nye, viktige.
Byggeklosser i java  Klassedefinisjon  Variabel deklarasjon  Metodedeklarasjoner  En ordentlig klasse  Spesielle/kryptiske skrivemåter  løkker og.
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 9 Polymorfi. 9.1 Sein binding Ofte er det perfekt match mellom typen til ein variabel og objektet han refererer til ChessPiece bishop;... bishop.
Kapittel 3 Bruk av klasser og objekt. 3.1 Å lage objekt Eit variabelnamn i Java representerer Ein primitiv verdi (f eks boolean, int ) Eit objekt (f eks.
Kapittel 23 (Big Java 2.utg) Tråder. Kjøring av tråder Ein tråd er ein del av eit program som blir eksekvert uavhengig av andre deler av programmet Vi.
Kapittel 5 Vilkårssetningar og løkker. 5.1 Boolske uttrykk George Boole ( ), britisk matematikar Utvikla teori om logikk ved bruk av symbol i.
Kapittel 12 Samlingar Samlingar og datastrukturar Ei samling (collection) blir brukt til å oppbevare og handtere andre objekt ArrayList – klassen.
Kapittel 7 Array (lister og tabellar). 7.1 Arrayelement Array (lister, tabellar) er kjent frå VB Blir brukt til å organisere data når vi har mange dataelement.
Kapittel 25 (Big Java 1.utg) Java Server Pages og Servlets.
Kapittel 10 Exceptions Handtering av exceptions Ein exception er eit objekt som representerer ein feil eller eit unntak Exceptions blir kasta av.
Leksjon 03 IKT i tilrettelegging av pedagogisk materiale 3.
Android-Programmering Våren Oversikt Long-running operasjoner Introduksjon til Android services On-demand service Bruk av servicer på tvers av prosesser.
Kurs for valfunksjonærar Kyrkjevalet Innhald Velkomen til kurs! Nytt ved kyrkjevalet i 2015 Kursmateriell: Valhandbok Røysting på valtinget  Utstyr.
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.
| Å argumentere å skrive argumenterande tekst. Å komme i gang Bestem tema Finn informasjon om saka. Sjå ein film, leit på Internett, les i aviser, fagbøker.
Vel digital postkasse på Noreg.no
Variabler, datatyper og uttrykk
| Å argumentere Å skrive argumenterande tekst.
INF5110 – 5. og 7. mai 2015 Stein Krogdahl, Ifi, UiO
IS-102 Interaksjon med objekter
Spillutvikling Introduksjon til spillutvikling i Processing
Lær å logge inn til offentlege tenester med MinID
Vel digital postkasse på Noreg.no
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:

Kapittel 2 Data og uttrykk

2.1 Strengar Ein tekststreng er eit objekt i Java, definert av String klassen Meir om denne klassen i kapittel 3 Vi bruker “ ” når vi definerer ein streng Ein streng kan innehalde alle lovlege tegn, inkludert numeriske siffer og spesialtegn System.out.println(“Hello, world!”); Bruk av System.out – objektet sin println() – metode med ein tekststreng som parameter Skriv ut tekstlinje til skjermen, om vi ikkje vil ha linjeskift bruker vi print() – metoden, sjå døme i boka

Strengar Samanbinding (concatenation) av strengar med + operatoren Fungerer dersom ein eller begge operandane er ein String Nyttig også dersom vi har lange strengar som vi vil dele over fleire kodelinjer Ver obs! ved samanbinding av tal Escape sekvensar med \ Skrive ut “, ‘ og \ Skrive ut backspace, tab, newline og carriage return

2.2 Variable og tilordning Variabel-begrepet er kjent frå VB Namn på memory-lokasjon reservert for ein bestemt datatype Verdien kan endre seg over tid Deklarasjon Vi spesifiserer type og namn int total; // vi skal ha ein int som heiter total Initialisering Vi gir startverdi, gjerne samtidig med deklarasjon int total = 0; // vi skal ha ein int som heiter total med startverdi 0 Tilordning Vi gir verdi til variabelen, gammal verdi blir borte total = 759;

Variable og tilordning Java er eit typesterkt språk Vi kan ikkje tilordne verdiar i strid med den typen vi har gitt variabelen int total; total = 3.14; // dette går ikkje Om konvertering av data seinare Konstantar Bruk av det reserverte ordet final Verdien kan ikkje endrast final int MAX = 100; Bruk konstantar i staden for tal!

2.3 Primitive datatypar Heiltal: byte, verdiar mindre enn ±128 short, verdiar mindre enn ± int, verdiar mindre enn ± long, verdiar mindre enn ± Desimaltal float, verdiar inntil ±3.4E38, 7 signifikante siffer double, verdiar inntil ±1.7E308, 15 signifikante siffer char, 16 bits Unicode tegn boolean, true/false

2.4 Uttrykk Eit uttrykk (expression) er ein kombinasjon av operatorar og operandar brukt til å utføre ei berekning I første omgang ser vi på tal og rekneoperasjonar Aritmetiske operatorar +, -, *, / Ver obs! på heiltalsdivisjon (døme) % eller modulo, delingsrest (døme)

Uttrykk For å lage meir samansette og kompliserte uttrykk som fungerer slik vi vil, må vi ha oversikt over operatorpresedens, med andre ord: I kva rekkefølgje blir ting utført? Unære operatorar før binære *, / og % før + og – = til slutt

Uttrykk Operatorar på same nivå blir utført frå venstre mot høgre Bruk parentesar for å tvinge fram presedens, uttrykk inne i ein parentes blir rekna ut først Parentesar er også bra for å gi oversikt

Uttrykk ++ og -- operatorane count++, postfix form ++count, prefix form count = count + 1 Alle utfører det same -- virkar tilsvarande merk forskjellen på postfix og prefix: count = 15; total = count++; total = ++count;

Uttrykk Tilordningsoperatorar +=, -=, *=, /=, %= Kjekt å ha, men pass på at resultatet blir slik du vil! Om total = 5 og sum = 3, kva blir total += (sum+=5); total -= (sum+=5); total *= 20; total /= 2; total %= sum;

2.5 Konvertering av data Sjølv om Java er typesterkt kan vi likevel konvertere data frå ein type til ein annan når det er nødvendig Widening/narrowing conversions, sjå lister i boka OK/ikkje OK! Konvertering til “større” type medfører vanlegvis ikkje tap av informasjon frå int til long er OK Konvertering til “mindre” type bør vi unngå, kan medføre tap av informasjon frå long til int er som regel ikkje OK

Konvertering av data Konvertering ved tilordning float money; int dollar = 25; money = dollar; money har no verdien 25.0 Dette er OK, sidan vi utfører “widening conversion” dollar = money er ikkje OK, “narrowing” Fører til feilmelding

Konvertering av data Konvertering ved promotion Skjer automatisk når ein operator må endre typen på ein operator for å utføre ein operasjon float result, sum=7.5; int count = 3; result = sum / count; verdien til count blir gjort om frå int til float ved promotion før divisjonen blir utført count er framleis av typen int etterpå

Konvertering av data Konvertering ved casting Den mest generelle forma for konvertering i Java Går det ikkje an å caste, så kan vi ikkje konvertere i det heile Typenamn i parentes framfor variabelen som skal konverterast int dollars; float money = 25.70; dollars = (int) money; Verdien i money blir trunkert til 25, som blir tilordna dollars Konvertering er midlertidig og endrar kun verdien, etterpå er money framleis ein float med verdien 25.70

2.6 Interaktive program Scanner -klassen tilbyr metodar for lesing av input frå ulike kjelder Vi opprettar objekt av Scanner-klassen ved å bruke new -operatoren: Scanner scan = new Scanner(System.in); Vi lagar eit objekt av Scanner -klassen, dette objektet heiter scan, og skal lese input frå System.in -objektet, som er konsoll (standard input)

2.7 Grafikk Oppdeling av bilder i pixels Det komplette bildet blir lagra ved å lagre fargen til kvar pixel Koordinatsystem for å referere til punkt på skjermen I Java har vi eit koordinatsystem der (0,0) er i øverste venstre hjørne av skjermen, slik at for alle synlege punkt er både x- og y-verdi positive Fargar blir representert ved hjelp av Color - klassen RGB-verdi gir innhold av primærfargane

2.8 Applets Applets er Java-program som blir eksekvert i ein nettlesar Java bytekode (.class-fil) blir linka til eit HTML-dokument og sendt over nettet Programmet blir kjørt ved hjelp av ein Java interpreter i nettlesaren Appletviewer inkludert i NetBeans kan også brukast til å kjøre Applets

Applets Sidan nettlesaren representerer eit program som er i gang, treng vi ingen main() metode i ein Applet paint() blir automatisk kjørt av appleten Vi må importere ting vi treng, meir om dette i neste kapittel Vi ser på Einstein -eksemplet Bruk av Graphics -klassen HTML-kode for å inkludere applets

2.9 Tegning av figurar Meir om Graphics -klassen Definert i java.awt -pakken, tilbyr metoder for å tegne figurar Graphics -objekt sendt med som parameter til paint() metoden i ein applet Gjennomgang av metoder: drawLine(), drawRect(), drawOval(), drawString(), drawArc(), fillRect(), fillOval(), fillArc(), getColor(), setColor()

Tegning av figurar Bakgrunnsfarge: Dette er fargen på overflata til komponenten vi tegnar på, i dette tilfellet appleten setBackground() metoden blir brukt til å sette bakgrunnsfarge Farge på tekst, figur o l: Dette er fargen vi tegnar med, i dette tilfellet Graphics - objektet setColor() metoden til Graphics -klassen blir brukt Merk spesielt bruken av konstantar i Snowman - appleten