FEN 2006-11-6IntroJava2006 - AAU1 Java grundelementer Variable og datatyper Sætninger og udtryk Metoder.

Slides:



Advertisements
Lignende præsentationer
Velkommen til Softwarekonstruktion
Advertisements

FEN IntroJava AAU1 Introduktion til Java programmering Kursusintroduktion Introduktion til programmering Java og BlueJ.
Akademiuddannelsen i informationsteknologi Softwarekonstruktion
Indledende Programmering Uge 2 - Efterår 2006 Selektioner og interaktion mellem objekter Susanne Brix Lindros.
KONCEPT Klasser og objekter En klasse beskriver et World ArrayList
Grundlæggende programmering Efterår 2001
Hvordan man skriver koden.
GP5, Martin Lillholm 1 Grundlæggende Programmering (GP) Efterår 2005 Forelæsning 5 Slides ligger på nettet. Du er velkommen til at printe dem nu. Vi begynder.
GP 10, 7/ Grundlæggende programmering Efterår 2001 Forelæsning 10 onsdag 7/ kl. 9:15 – 12:00.
FEN IntroJava AAU1 Opsamling: afvikling af Java-programmer Input fra keyboard og fil Fra en prompt Fra BlueJ Fra NetBeans.
Begreber og Redskaber 2 BRP.
C# programmering Per P. Madsen Afd. for Proceskontrol
MEC, DAIMIIntroJava AAU1 Crayon-objekter nu med loops og metoder.
Begreber og Redskaber 2. Plan for idag Noget om bestanddelene i et programmeringssprog Syntaksbeskrivelse af java Næste gang: –Binære tal –Repræsentation.
Forelæsning 3.1 Collections Javas for-each løkke
Begreber og Redskaber 3 BRP.
Delphi og C++ Builder C++ Builder. C++ Historie Sproget blev designet for AT&T af danskeren Bjarne Stoustrup En objektorienteret videreudvikling.
Fundamentale datastrukturer
FEN KbP/seminar 1: Specifikationer/Notationen Q 1 Kontraktbaseret programmering: Seminar 1 Om specifikationer Algoritmenotationen Q.
FEN IntroJava AAU1 Loops og algoritmer Sweep – for-loop Søgning – while-loop.
Klasser.
1 Fundamentale datastrukturer. 2 Definitioner: abstrakt datatype, datastruktur Elementære datastrukturer og abstrakte datatyper : arrays, stakke, køer,
GP 3, 12/ Grundlæggende programmering Efterår 2001 Forelæsning 3 onsdag 12/ kl. 9:15 – 12:00.
Procestræ under afvikling af cp init login shell cp cp src dest.
Paradigmer i Programmering 2. Sammensatte typer Tupler og lister Programmering med rekursion Programmering med pipe-lines Programmering med polymorfe.
Paradigmer i Programmering 1. Program for idag : Funktioner og udtryk i SML : Øvelse : Frokost – 14.00: Deklarative.
Primitive typer. dIntProg, F08Typer.2 Subtyperelation for primitive typer byte ≤ short ≤ int ≤ long ≤ float ≤ double char boolean double d; int i; d =
FEN IntroJava AAU1 Klasser og objekter Grundbegreber Student-Course.
Paradigmer i Programmering 1. Plan for kurset 4 x Mads R, 4 x Torben B, 2 x opgave MR: Funktionsprogrammering, SML TB: Logikprogrammering, Prolog Opgave:
FEN IntroJava AAU1 Grafik – Crayon-objekter.
FEN IntroJava AAU1 Endnu mere om Klasser og Objekter Mange til mange relationer Student-Course v3.
Begreber og Redskaber 1. Plan for kurset Formål –Give et begrebsmæssigt grundlag for programudvikling, samt overblik over udvalg af redskaber og metoder.
Anvendelser I Leg og spil.
03 – Udtryk og metoder. 2 NOEA2009Java-kursus – Udtryk og metoder Udtryk i Java Java har standard udtrykene… Værditildeling Subrutiner og funktionskald.
PD – kursusgang 3 Introduktion til Java Script. Mål Viden om hvordan JavaScripts indlejres i HTML dokumenter Viden om programmering i JavaScript  Erklæring.
Intro Siden sidst: evaluering på opgaver og virtuel kursus.
Opfølgning på Dygtig Skildpadde (Michael) To algoritmeskabeloner findEn findAlle Primitive typer (forfremmelse og begrænsning) Identitet versus lighed.
Længste plateau En klassisk problemstilling (Gries, 1981) - og her i Java!!! Denne opgave drejer sig om at bestemme længden af det længste plateau i en.
Virkefeltsregler i Java int i; int j; int k; i = i+j; String t; Sequence s; int i; int j; Sequence s; String s; int i; int j;
Repetition af dIntProg v/ Morten D. Bech. Tour de force Variabler Løkker Comparable ImErKo-reglen Eksamenssæt dIntProg, E13.
GP4, Martin Lillholm 1 Grundlæggende Programmering (GP) Efterår 2005 Forelæsning 4 Vi begynder Slides ligger på hjemmesiden. Du er velkommen til.
C#: Data Typer. 2 Nordjyllands Erhvervakademi Indhold: “.NET is designed around the CTS, or Common Type System. The CTS is what allows assemblies,
GP3, Martin Lillholm 1 Grundlæggende Programmering (GP) Efterår 2005 Forelæsning 3 Vi begynder Slides ligger på hjemmesiden. Du er velkommen til.
Identitet vs lighed. Spørgsmål Hvad udskriver run metoden? 1.”Ens!” 2.”Forskellige!” 3.Ved ikke public class Driver{ public static void run(){ String.
Begreber og Redskaber 4. Plan for idag Om metoder, parametre, returværdier Et par ord om objekt-orientering Håndkøring af programmer.
Begreber og Redskaber 3. Plan for idag Om metoder, parametre, returværdier Overblik over klasser,objekter,nedarvning Et par ord om objekt-orientering.
Quiz 3.1. Quiz 1 – Assignment dIntProg, E14 Hvad er værdierne af x og y efter udførelse af følgende program? 1.x er 6, y er 3 2.x er 8, y er 5 3.x er.
I o p o DAIMI, AU, November 1999Programkonstruktion I9E.1 Konstruktion og brug af klasser – en stak og en HP-regnemaskine push pop.
 Michael E. Caspersen, 2000Introducerende objektorienteret programmering6B.1 Virkefeltsregler i Java int i; int j; int k; i = i+j; String t; Sequence.
DAIMIIntroducerende objektorienteret programmering4B.1 Typer og tilstand i Java Typer, tilstand, erklæring, variable, primitive datatyper, reference- og.
Klasser og objekter. dIntProg, E08Klasser og objekter.2 Grundbegreber Klasser og objekter –beskrivelse –oprettelse Attributter og metoder –tilstand –opførsel.
DAIMIIntroducerende objektorienteret programmering3B.1 Definition af klasser Klasseskelet, metoder, et eksempel: dato.
DAIMIIntroducerende objektorienteret programmeringkd.1 Definition af klasser Klasseskelet, metoder, et eksempel: dato.
DAIMIIntroducerende objektorienteret programmering4B.1 Grundlæggende og Reference Typer i Java Typer, tilstand, erklæring, reference- og værdi semantik,
Klasser og objekter – grundbegreber.  Michael E. Caspersen, 2001Introducerende objektorienteret programmeringKlasser og objekter.2 Klasser og objekter.
Fundamentale sprogbegreber Typer. dIntProg, F08Typer.2 Typer Primitive typer –boolean –byte, char, short, int, long, float, double Objekttyper –klassetype.
 Jens Bennedsen 2001Multimedie programmering3A.1 Definition af klasser Klasseskelet, metoder, et eksempel: dato.
Klasser og objekter. dIntProg, F08Klasser og objekter.2 Grundbegreber Klasser og objekter –beskrivelse –oprettelse Attributter og metoder –tilstand –opførsel.
Virkefeltsregler i Java int i; int j; int k; i = i+j; String t; Sequence s; int i; int j; Sequence s; String s; int i; int j;
I o p o DAIMI, AU, September 1999Introducerende objektorienteret programmering5C.1 Virkefeltsregler i Java int i; int j; int k; i = i+j; String t; Sequence.
Virkefeltsregler i Java int i; int j; int k; i = i+j; String t; Sequence s; int i; int j; Sequence s; String s; int i; int j;
Forelæsning Uge 2 – Torsdag Java syntax og style guide Sætninger –Simple sætninger (assignment, interne og eksterne metodekald) –Sammensatte sætninger.
Algoritmeskabeloner findOne, findAll, findNoOf, findSumOf Primitive typer (forfremmelse og begrænsning) Identitet versus lighed (for objekter, herunder.
Forelæsning Uge 2 – Torsdag
Forelæsning Uge 4 – Mandag
Forelæsning Uge 4 – Mandag
Forelæsning Uge 4 – Mandag
Studiepraktik Thomas Bøgholm Mikkel Hansen Jacob Elefsen
Programmering.
Forelæsning Uge 4 – Torsdag
Præsentationens transcript:

FEN IntroJava AAU1 Java grundelementer Variable og datatyper Sætninger og udtryk Metoder

FEN IntroJava AAU2 Sprogelementer De fleste programmeringssprog indeholder følgende elementer: –Definition af program start og (måske) slut –Variable og konstanter til at gemme værdier og tilstande –Kontrolstrukturer (hvis det er sandt gør dit ellers gør dat) –Løkke (for alle gør...; sålænge det er sandt...) –Metoder eller funktioner. (Udfør disse instruktioner)

FEN IntroJava AAU3 Variable Holder en værdi Har et navn Har en type, typen bestemmer, hvad man kan gøre med variablen En metafor: –Du kan betragte en variabel som en æske, du kan lægge en (eller flere) værdier i. Æsken har en bestemt størrelse og form. Du kan kun lægge værdier ned i æsken, som er mindre end eller lig med størrelsen af æsken. Og det er ikke alle former af æsker, der passer sammen. –Når vi erklærer en variable skal vi fortælle hvilket navn vi giver den. –Vi skal også fortælle hvilken størrelse og ”form” den har. Dette gøres med datatypen. –Endelig skal vi lægge noget i æsken, før vi kan tage det op igen. Dette gøres til værditilskrivning af variablen.

FEN IntroJava AAU4 Et eksempel public static void main() { String sStatement; sStatement = "Make a statement"; int iCount = 0; int x = 0, y = 0; //flere heltal System.out.println("The value for variables are: sStatement=” + sStatement + "; iCount =" + iCount); } Erklæring af variable som en string Tildeling af værdi

FEN IntroJava AAU5 Datatyper Datatyper fortæller hvad æsken indeholder. Nogle af de mest almindelige er: –int, byte, short, long Heltal –Double, floatReelle tal, kommatal –booleanLogisk (sand eller falsk) –charTegn (bogstaver, cifre, specialtegn) –StringStrenge (sekvens af tegn - char) String er egentlig en klasse

FEN IntroJava AAU6 Simple typer Data TypeDefault Value (for fields) byte0 short 0 int0 long0L float0.0f double0.0d char'\u0000’ String (or any object) null boolean false

FEN IntroJava AAU7 String String er en klasse Værdier er objekter String har masser af metoder: StringString –length() –equals() –compareTo() –charAt(int i)

FEN IntroJava AAU8 Aritmetik +, -, *, /, % (modulus) Indretter sig efter operandernes type: –33/2 er 16 –33.0/2 er 16.5 –5%2 er 1 public void main() { int a = 1; int b = 3; double x = 2.0; System.out.println("a+b er lig med " + (a+b)); System.out.println("og ikke " + a + b);//Hvad sker her? System.out.println("a+x er lig med " + (a+x)); }

FEN IntroJava AAU9 Logiske udtryk – betingelser public boolean passed() { if(grade<6) return false; else return true; } public boolean passed() { return grade>=6; }

FEN IntroJava AAU10 Løkker (loops) public void print1To10() { for(int i= 1; i<=10;i++) { System.out.println("Tal: " + i); } System.out.println("...og nu med while: "); int i= 1; while(i<=10) { System.out.println("Tal: " + i); i= i+1;//eller i++ } public void printOnlyEvens() { for(int i= 1; i<=10;i++){ if(i%2==0){ System.out.println("Tal: " + i); } Hvor skal start- tuborgen (’{’) være?

FEN IntroJava AAU11 Kontrolstrukturer Sekvens: –Statement1; Statement2 Selektion: –if (betingelse) Statement1 –if (betingelse) Statement1 else Statement2 Iteration: –for (---) Statement –while (betingelse) Statement –do Statement while (betingelse) Blokstruktur: –Sætninger i ”Tuborg”-paranteser (’{’ og ’}’) er også en sætning: {Statement1; Statement2;}

FEN IntroJava AAU12 Arrays (vector) Et array er en samling af elementer af samme type Elementerne er indekseret (fra 0) Et array er en variabel Hver element kan også betragtes som en variabel private int[] myArray= {11,2,5, 3}; public void main() { System.out.println(”1: " + myArray[1]); myArray[2]= 4; for(int i= 0; i<myArray.length; i++) { System.out.println(myArray[i]); } length-1 a: i

FEN IntroJava AAU13 Procedural abstraktion: Metoder En metode samler en klump kode og definerer en funktionalitet. Metoder kan bruges til kode, der skal kaldes flere gange. Metoden har et navn (abstraktion og indkapsling). Metoder kan betragtes som funktioner på et objekt eller en klasse. Metoder kendes på parenteser public void printArr() { for(int i= 0; i<myArray.length; i++) { System.out.println(myArray[i]); } public void print() { System.out.println("Name: "+name); System.out.println("Address: "+addr); System.out.println("Age: "+age); if(follows!=null) follows.print(); }

FEN IntroJava AAU14 Metoder - parametre public class Methods { private int[] myArray1= {11, 2, 5, 3}; private int[] myArray2= {1, 22, 5, 13, 12, 1}; public void main() { printArr(myArray1); printArr(myArray2); } public void printArr(int[] a) { for(int i= 0; i<a.length; i++) { System.out.println(a[i]); } Formel parameter. Erstattes af aktuel parameter Aktuel parameter. Overføres til formel parameter ved kald af metoden

FEN IntroJava AAU15 Metoder Returværdi: –Kaldet returnerer en værdi, som kan anvendes –Returtype –Return-sætning public void main() { int x= sumArr(myArray1); System.out.println("Summen er: "+x); } public int sumArr(int[] a) { int sum= 0; for(int i= 0; i<a.length; i++) { sum= sum + a[i]; } return sum; }

FEN IntroJava AAU16 Øvelser Alle følgende opgaver tager udgangspunkt i eksemplet med summen af tallene i et array: 1.Lav en metode, som beregner gennemsnittet af tallene i et array. 2.Lav en metode, som tæller antal forekomster af værdien 7 i et array. 3.Lav en metode, som returnerer sand, hvis værdien 3 findes i et array og falsk hvis ikke. 4.Generaliser opgave 2 og 3, så der kikkes efter en vilkårlig værdi (ind-parameter til metoderne) i stedet for 7 og 3 resp.