FEN 2006-11-1IntroJava2006 - AAU1 Opsamling: afvikling af Java-programmer Input fra keyboard og fil Fra en prompt Fra BlueJ Fra NetBeans.

Slides:



Advertisements
Lignende præsentationer
Velkommen til Softwarekonstruktion
Advertisements

FEN IntroJava AAU1 Introduktion til Java programmering Kursusintroduktion Introduktion til programmering Java og BlueJ.
T1 – OPGAVE 14.2 LINETT & SABRINA Klasse Varer namespace Opgave_14._2 { class Varer { private string vare; private string farve; private double.
Array og ArrayList Et slideshow. Som er sødt.. Hvordan virker ArrayList?  ArrayList NAVN = new ArrayList ();  NAVN.add(”Værdi”);  NAVN.add(index, ”værdi”)
Distribueret programmering, specielt.NET Remoting Rasmus D. Lehrmann DM
NetBeans Installation og brug.
Oversættelse af Java-programmer JavaBytecode javac Normalt oversættes Java-programmer til bytecode, som fortolkes af en JVM (Java Virtual Machine). Java.
Selve objektet versus referencen til objektet Nedarvning
Første generation (maskiner/operativsystemer) 45-55: radiorør Kun maskinsprog programmering = skrivning af nullerog ettaller Intet operativsystem programmør.
Grundlæggende programmering Efterår 2001
09 – Arv og polymorfi i java
Hvordan man skriver koden.
01 – Java platform for starters. 2 NOEA2009Java-kursus – Java Platform Introduktion til Java Baggrund Hvad er Java? Faciliteter i Java.
VOOP, 8 april Refleksion i objekt orienterede programmeringssprog Mandag 8/ Kasper Østerbye.
Indledende Programmering Uge 5 - Efterår 2006 Om at udvikle korrekte og pålidelige programmer Susanne Lindros.
FEN IntroJava AAU1 Java grundelementer Variable og datatyper Sætninger og udtryk Metoder.
18 – Java Server Faces. 2 NOEA2009Java-kursus – JSF 2 Web-applikationer - 1 Brugere interagerer med en Web-browser Browseren sender forespørgsler til.
C# programmering Per P. Madsen Afd. for Proceskontrol
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
1 Tråde 2 Plan Trådbegrebet Synkronisering Koordinering Eksempel: et flertrådet spil.
GP6, Martin Lillholm 1 Grundlæggende Programmering (GP) Efterår 2005 Forelæsning 6 Slides ligger på nettet. Du er velkommen til at printe dem nu. Vi begynder.
Fundamentale datastrukturer
Mønstre En lille introduktion. Singleton Tilgå et objekt igennem klassereference i stedet for objektreference.  Overflødiggør referencer til objektet.
FEN IntroJava AAU1 Loops og algoritmer Sweep – for-loop Søgning – while-loop.
GP 6, 13/ Grundlæggende programmering Forår 2002 Forelæsning 6 onsdag 13/ kl. 9:15 – 12:00.
1 Fundamentale datastrukturer. 2 Definitioner: abstrakt datatype, datastruktur Elementære datastrukturer og abstrakte datatyper : arrays, stakke, køer,
Procestræ under afvikling af cp init login shell cp cp src dest.
Comparable Students German Students Composite Pattern State Pattern Observer Pattern Collections Interfaces Abstrakte klasser Design Patterns.
GP 6, 3/ Grundlæggende programmering Efterår 2001 Forelæsning 6 onsdag 3/ kl. 9:15 – 12:00.
GP7, Martin Lillholm 1 Grundlæggende Programmering (GP) Efterår 2005 Forelæsning 7 Slides ligger på nettet. Du er velkommen til at printe dem nu. Vi begynder.
Begreber og Redskaber 7. Plan for idag Rekursive underprogrammer Rekursive datastrukturer Rekursion vs iteration Rekursivt: Flette sortering.
11 - Exceptions. 2 NOEA2009Java-kursus – Exceptions Hvad er en exception? En undtagelse. Typisk en fejl der opstår runtime Afbryder det normale programflow.
FEN IntroJava AAU1 Klasser og objekter Grundbegreber Student-Course.
FEN IntroJava AAU1 Grafik – Crayon-objekter.
FEN IntroJava AAU1 Endnu mere om Klasser og Objekter Mange til mange relationer Student-Course v3.
JavaCC Top-down (Recursive descent). Mest populære mht Java. Regulær grammatik og Context-free grammatik i en fil. Tillader EBNF: (..)*, (..)+ og (..)?
C#: Udtryk og metoder Kilde: Joe Hummel. 2 Nordjyllands Erhvervakademi – 2008 Indhold “With regards to programming statements and methods, C# offers what.
03 – Udtryk og metoder. 2 NOEA2009Java-kursus – Udtryk og metoder Udtryk i Java Java har standard udtrykene… Værditildeling Subrutiner og funktionskald.
Hvad består en distribueret applikation af ? Processer der kører på hver deres maskine Tråde - 1 eller flere "letvægtsprocesser" per proces Objekter i.
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.
GP9, Martin Lillholm 1 Grundlæggende Programmering (GP) Efterår 2005 Forelæsning 11 Slides ligger på nettet. Du er velkommen til at printe dem nu. Vi begynder.
Forelæsning 7.1 – repetition
Tekst filer Tekstfiler opbygges normalt af linier, hvor disse ikke behøver at være samme længde. Når man skal arbejde med tekstfiler, ønsker man metoder.
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.
 Michael E. Caspersen, 2000Introducerende objektorienteret programmering6B.1 Virkefeltsregler i Java int i; int j; int k; i = i+j; String t; Sequence.
 Bærbak & Caspersen, 2000Introducerende objektorienteret programmering1.1 Turtlemaskinen Arkitektur, instruktionssæt og eksempler.
DAIMIIntroducerende objektorienteret programmering3B.1 Definition af klasser Klasseskelet, metoder, et eksempel: dato.
DAIMIIntroducerende objektorienteret programmeringkd.1 Definition af klasser Klasseskelet, metoder, et eksempel: dato.
DAIMI, AUIntroducerende Objektorienteret Programmering1 Persistens, I/O og strømme Input og output, datastrømme i Java, objekt serialisering.
DAIMIIntroducerende objektorienteret programmering1B.1 Skildpadder Modeller, objekter og opførsel.
Indledende Programmering Uge 6 - Efterår 2006
 Jens Bennedsen 2001Multimedie programmering4.1 Definition af begreber Interface, implements, klasse.
 Jens Bennedsen 2001Multimedie programmering1.1 Skildpadder Modeller, objekter og opførsel.
DAIMIIntroducerende objektorienteret programmering4A.1 Kontrakter og Design Kontraktbaseret design, JavaDoc dokumentation,
 Jens Bennedsen 2001Multimedie programmering3A.1 Definition af klasser Klasseskelet, metoder, et eksempel: dato.
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.
Skildpadder Modeller, objekter og opførsel.  Michael E. Caspersen, 2000Introducerende objektorienteret programmeringSkildpadder.2 Model Modeller bruges.
FEN IntroJava AAU1 Introduktion til programmering Et program: HelloWorld Objekter og klasser.
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;
Computerens talsystem
Dokumentation.
Programmering.
Tråde & Executors – uge 2.
Tråde & Executors – uge 2.
Præsentationens transcript:

FEN IntroJava AAU1 Opsamling: afvikling af Java-programmer Input fra keyboard og fil Fra en prompt Fra BlueJ Fra NetBeans

FEN IntroJava AAU2 Java Virtual Machine Afvikling af Java-programmer source (xxx.java) compiler CPU bytecode (xxx.class)

FEN IntroJava AAU3 Java Program-struktur Et Java-program består af en række klasser (source- kode) Hver klasse er gemt som en tekstfil med extension.java og samme navn som klassen Java-compileren (>javac) oversætter source-koden til Java-Byte-Code (extension.class) Java-programmer kører på Java Virtual Machine (JVM) JVM leder efter en metode med signatur: public static void main(String[] args) Her starter programmet.

FEN IntroJava AAU4 Med håndkraft Vi skriver kildekoden som tekstfiler i en editor, fx. NotePad Gemmer hver klasse som en tektsfil med samme navn som klassen og extension.java En af klasserne skal indeholde main-metoden

FEN IntroJava AAU5 Driveren: Driver.java public class Driver { public static void main(String[] args){ Student s= new Student("Kurt","Bygaden 2", 22); s.print(); s.celebrateBirthDay(); s.print(); Course c= new Course("Java"); s.enroll(c); s.print(); s.setGrade(9); s.print(); }

FEN IntroJava AAU6 Programmet skal oversættes Programmet oversættes med kommandoen ’javac’ (java compiler) Alle filer, som benyttes fra main oversættes til.class filer med samme navn:

FEN IntroJava AAU7 Programmet skal køres Kommandoen ’java’ kører programmet på Java Virtual Machine Output:

FEN IntroJava AAU8 IDE Dette er bøvlet! Normalt bruges et udviklingsmiljø eller: IDE (Integrated Development Environment) Et IDE indeholder editor, styrer filer, starter compileren og afvikler programmet på den virtuelle maskine (og meget mere). Vi starter med et lille legetøjsmiljø: BlueJ

FEN IntroJava AAU9 I BlueJ Styrer filer Integrerer editor Kalder compiler Skjuler Driver- klassen og main- metoden Vi kan oprette objekter direkte Vi kan kalde metoder på objekter direkte

FEN IntroJava AAU10 NetBeans IDE: NetBeans klarer det samme som BlueJ plus en hel masse mere Men vi skal stadig selv skrive drivere (her kaldet Main)

FEN IntroJava AAU11 Uden BlueJ: Behov for input fra keyboard import java.util.*; public class Driver2 { public static void main(String[] args){ String again= "n"; Scanner kb= new Scanner(System.in); do{ Student s= new Student("Kurt","Bygaden 2", 22); s.print(); s.celebrateBirthDay(); s.print(); Course c= new Course("Java"); s.enroll(c); s.print(); s.setGrade(9); s.print(); System.out.print("Again (y/n)? "); again= kb.nextLine(); }while(again.equals("y")); } ScannerScanner-klassen kan mange ting – bl.a. læse fra keyboardet Gentag sålænge svaret er ‘y’

FEN IntroJava AAU12 Scanner kan læse fra andet end keyboardet import java.util.*; import java.io.*; public class FileReader { public static void main(String[] args) throws FileNotFoundException { Scanner sc = new Scanner(new File("mynumbers.txt")); long sum=0; long aLong=0; while (sc.hasNextLong()) { aLong = sc.nextLong(); sum= sum+aLong; } System.out.println("Sum = "+sum); }