Java: Utvecklingsverktyg, datatyper, kontrollstrukturer

Relevanta dokument
(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java

Grundläggande programmering DVG A08 & ISG A04. Allmän information. Å vem är jag då. Karlstads Universitet, Johan Öfverberg 1

Objektorienterad programmering i Java. Föreläsning 5 Kort om Java-Applets

OOP Objekt-orienterad programmering

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

Objektorienterad programmering i Java I

NetBeans 7. Avsikt. Projektfönster

Att använda Java SE JDK 6

Föreläsning 1. Presentation av kursen Vad är programmering? Lite om java och utvecklingsmiljöer Aktivitetsdiagram Ett första program

ID1004 Laboration 3, 5-6 November 2012

Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C.

Objektorienterad Programkonstruktion. Föreläsning 3 9 nov 2015

Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas i programmeringskurserna. Mera information finns på:

Eclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas.

LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p

Objektorienterad Programkonstruktion. Föreläsning 3 7 nov 2016

Övning 1. Datateknik A, Java I, 5 poäng. Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program

Att använda Java SE JDK 6

JAVA Mer om klasser och objektorientering

Lektion Java Grunder. Javas historia. Programmeringsspråket Java. Skillnaderna mellan Java och C++ JVM (Javas Virtuella Maskin)

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet

Eclipse en handledning

Editering, Kompilering och Exekvering av Javaprogram

Anteckningar 1: Grundläggande saker

l uppgiftsformulering l algoritmkonstruktion l verifikation l kodning l testning och avlusning l validering l dokumentering l underhœll Kapitel 2

System.out.println("Jaså du har "+ antaldollar + " stycken.");

Kort om klasser och objekt En introduktion till GUI-programmering i Java

2 Eclipse en handledning

SMD 134 Objektorienterad programmering

Uppgiften är att beskriva en kvadrat i ett Java program. En första version av programmet skulle kunna se ut så här:

NetBeans 5.5. Avsikt. Projektfönster

Programmering för språkteknologer I, VT2012. Rum

Arv: Fordonsexempel. Arv. Arv: fordonsexempel (forts) Arv: Ett exempel. En klassdefinition class A extends B {... }

Objektorienterad Programmering (TDDC77)

I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program

Kompilera och exekvera Javakod

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3

Eclipse en handledning

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Kort repetition. Programmeringsteknik för Bio1 och I1. Vad ska vi lära oss idag? Ett exempel

Högskolan Dalarna sid 1 av 7 DI-institutionen Hans-Edy Mårtensson Sten Sundin

Att prova på en enkel Applet och att lära sig olika sätt att hämta data från tangentbordet. Du får även prova på att skapa din första riktiga klass.

Subklasser och arv Inledning till grafik (JFrame och JPanel). Något om interface. Objektorienterad programvaruutveckling GU (DIT011) Subklasser

Objektorienterad Programmering DAT043. Föreläsning 1 15/1-18 Moa Johansson

ITK:P1 Föreläsning 4. Grafiska gränssnitt i Java. AWT-komponenter

Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten?

Objektorienterad programmering i Java

Programutveckling med Java Development Kit. (JDK 1.1.x) och Programmers File Editor (PFE 7.02)

Klassen javax.swing.timer

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

DI-institutionen Sid 1 av 5 Hans-Edy Mårtensson Sten Sundin Micael Karlsson

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 11

Att skriva till och läsa från terminalfönstret

Laboration 10 - Eclipse

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3

Objektorienterad Programkonstruktion, DD1346 FACIT. Tentamen , kl

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

OOP F1:1. Föreläsning 1. Introduktion till kursen OOP Vad är Java? Ett första Java-program Variabler Tilldelning. Marie Olsson

Java: kort introduktion. Trådar. Något om mutex, Dekkers algoritm och monitorer. Javas ("inbyggda monitor") synchronized.

Programmeringsteknik II - HT18. Föreläsning 6: Grafik och händelsestyrda program med användargränssnitt (och Java-interface) Johan Öfverstedt

Dagens program. Programmeringsteknik och Matlab. Viktiga datum. Ett första exempel. Programmall, vad behöver vi i ett javaprogram?

TDDC77 Objektorienterad Programmering

DAT043 Objektorienterad Programmering

Objektorientering. Objekt och metoder. Objektorientering. Viktiga begrepp. Klass. Objekt. Deklarativ programmering

Objektorienterad programmering. Fält som funktionsresultat. Mer om fält: att uppdatera ett parameterfält. Kontrast: Parametrar av primitiv typ

DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin

DD2385 Programutvecklingsteknik Några bilder till föreläsning 1 24/ Kursöversikt Javarepetition/Javaintroduktion

2I1049 Föreläsning 9. Iterativ programutveckling. Iterativ programutveckling. Modularisering, återanvändning och JavaBeans

FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY , kl

Föreläsning 5-6 Innehåll. Exempel på program med objekt. Exempel: kvadratobjekt. Objekt. Skapa och använda objekt Skriva egna klasser

Laboration 10 - NetBeans

Java Introduktion. Historik. Beståndsdelar

Föreläsning 5-6 Innehåll

Kompilering av Java-program med eclipse SDK för den som kan BlueJ

Målen med OOSU. Objektorienterad programmering. Objektorienterad programmering. Karlstads Universitet, Johan Öfverberg 1

2D1342 Programkonstruktion för F1, ht 2006

Idag. statiska metoder och variabler. private/public/protected. final, abstrakta klasser, gränssnitt, delegering. wrapper classes

Inledande programmering med C# (1DV402) Ditt första C#-program med Visual Studio

Föreläsning 2. Täcker material från lektion 1, 2, 3 och 4:

Högskolan Dalarna sid 1 av 5 DI-institutionen Hans-Edy Mårtensson Sten Sundin

Inledande programmering med C# (1DV402) Introduktion till C#

Administrativt. Programmeringsteknik för I1. Dagens program. Objektorienterad programmering

Föreläsning 13 Innehåll

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

2D1339 Programkonstruktion för F1, ht 2004

INTRODUKTION TILL JDBC

Programstruktur och terminologi. Programmet producerar följande utskrift i terminalfönstret: Ett Javaprogram består av en eller flera klasser

Föreläsning 8 - del 2: Objektorienterad programmering - avancerat

FactoryCast HMI. Premium & Quantum PLC. Applets

Applets med komponenter

Objektorienterad Programmering DAT043. Föreläsning 5 29/1-18 Moa Johansson (delvis baserat på Fredrik Lindblads material)

Objektorienterad Programmering (TDDC77)

OOMPA 2D1359 Föreläsning 3

Objektorienterad Programkonstruktion, DD1346. Tentamen , kl

Objektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11

"Är en"-relation. "Har en"-relation. Arv. Seminarium 2 Relevanta uppgifter. I exemplet Boll från förra föreläsningen gällde

Objektorienterad Programkonstruktion, DD1346. Tentamen , kl

Denna vecka. Idag. Grafiskt användarsnitt. Vi kommer att se

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.

Transkript:

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer Sven-Olof Nyström Uppsala Universitet 13 juni 2005 1

Utvecklingsverktyg för Java Vi rekommenderar Suns utvecklingsverktyg (SDK, tidigare JDK), se vidare kurshemsidan. För den som vill prova ett integrerat utvecklingsverktyg finns BlueJ, NetBeans, Eclipse De viktigaste verktygen i korthet: javac: kompilator java: interpretator appletviewer: för att visa applets 2

Dokumentation När man arbetar med Java behöver man dokumentation av alla standardklasser. Bäst är att ladda hem den till sin dator men man kan också länka direkt till originalet på http://java.sun.com/j2se/1.5.0/docs/api Suns tutorial http://java.sun.com/docs/books/tutorial beskriver Java från grundläggande syntax till de mest avancerade konstruktionerna. 3

Verktyg (forts) Arbetsgången är: man redigerar sina filer (klasser) med något redigeringsverktyg, kompilerar dem med javac och kör den med java (applikationer) eller appletviewer. 4

Verktyg (forts) Applets kan också visas i webbläsare som t.ex. Explorer, Netscape eller Mozilla. Kompilator, interpretator och appletviewer startas från ett terminalfönster (Unix) eller från ett MS-DOS-fönster (Windows). Om filen heter MinTest.java skriver man alltså: javac MinTest.java java MinTest 5

Java Application Programmer s Interface (API) är ett stor samling färdiga programvarukomponenter uppdelat i paket (packages) t.ex. AWT och Swing för grafik and grafiska användargränssnitt objekt, strängar, trådar, tal, input, output, datastrukturer m.m. applets nätverksklasser (URL, sockets, IP adresser) 6

Ett första exempel Klassen Hej implementerar ett klassiskt exempel: en applikation som skriver ut ett meddelande. Filen ska heta Hej.java, samma namn som klassen public class Hej { public static void main(string[] args) { System.out.println("Hej hopp"); } } 7

Enkelt exempel (testkörning Unix) harpo$ javac Hej.java harpo$ java Hej Hej hopp harpo$ 8

Tips Om ni provkör ovanstående kommer i att upptäcka att det går ganska långsamt att starta upp programmet. Det beror på att bytekoden (inklusive alla bibliotek) måste översättas till maskinkod. Skriv java -Djava.compiler=NONE Hej så går det snabbare att komma igång. 9

Enkelt exempel Att notera: Påminner mycket om C++. I Java är allting klasser, även main är en metod i en klass. I programmet deklareras en klass med namnet HelloWorld (filen ska då heta HelloWorld.java). Klassen har en metod main som i sin tur har ett metodanrop till metoden println i (det statiska) objektet out i klassen System. Liksom i C++ kan attribut och metoder deklareras private, public eller protected. 10

Att notera mera: Metoden main måste vara public, static och void: public för att man ska kunna komma åt den utifrån klassen. static betyder att den är en klassmetod och inte tillhör något objekt i klassen void för att den inte returnerar något. 11

Mera att notera Man kompilerar en Java-applikation med kommandot javac. För att kompilera programmet ovan skriver vi alltså javac HelloWorld.java. Kompilatorn skapar en bytekod-fil som heter HelloWorld.class Man exekverar en Java-applikation genom att skriva java xxx där xxx är den klass som innehåller metoden main. I exemplet skriver vi alltså java HelloWorld 12

Mera att notera I Java används ofta klassattribut (out i klassen System) och klassmetoder (main). Sådana attribut och metoder deklareras static de inte tillhör något objekt i klassen utan själva klassen. I C++ kommer man åt sådana metoder med ::-operatorn, i Java räcker det med en punkt. Man kan ha flera klasser i en källkodsfil om alla klasser utom den som har samma namn som filen bara används internt av "huvudklassen"(den med samma namn som filen). 13

En liten Java-applet Applets (appletprogram, miniprogram) är små applikationer som (oftast) körs av webbläsare. Vi skriver en liten applet: import java.awt.*; import java.applet.*; public class HelloWorldApplet extends Applet { public void paint(graphics g) { g.drawstring("hello world", 5,25); } } 14

En liten applet (forts) Här ser du appleten "i aktion": 15

En liten applet (forts) Applets startas som sagt från en webbläsare: man lägger helt enkelt in ett anrop till appleten på en webbsida. Filen HelloWorldApplet.html: <APPLET CODE="HelloWorldApplet.class" WIDTH=200 HEIGHT=50 ALIGN=MIDDLE> </APPLET> Programmet appletviewer kan användas för att titta på appleten. För att se appleten, ange kommandot: appletviewer HelloWorldApplet.html varvid ett litet fönster poppar upp på skärmen. 16