160 likes | 317 Views
Föreläsning 2. Kort Översikt Över Javaspråket. Källkodsformat. Källkod. <Namn>.java. Bytekod. <Namn>.class. Java VM för Macintosh. Java VM för Windows. ÅÄÖ… … använd helst inte dessa som namn på identifierare. Unicode används åäöμψζ tillåtna Inte alla miljöer klarar av det.
E N D
Föreläsning 2 Kort Översikt Över Javaspråket
Källkodsformat Källkod <Namn>.java Bytekod <Namn>.class Java VM för Macintosh Java VM för Windows ÅÄÖ… … använd helst inte dessa som namn på identifierare. • Unicode används • åäöμψζ tillåtna • Inte alla miljöer klarar av det
Ett Första Program OBS!! I Java-applikationer måste det finnas en main-metod! publicclass FirstApp{publicstaticvoid main(String[] args) {System.out.println("Java!"); }}
Main-metoden • public = tillgänglig utanför klassen • static = klassmetod • void = returnerar inget värde • main = namnet på metoden • String[] args = array av strängar (argument) public static void main(String[] args) publicstaticvoid main(String[] args){System.out.println(args[0]);}
Kommentarer • Används för att göra ett programs källkod lättare att läsa • Enradskommentar // Resten av raden är en kommentar • Blockkommentar /* Blockkommentarer kan vi använda när vi vill kommenteraöver flera rader */ • Dokumentationskommentar /** Dokumentationskommentar */
Identifierare • Är ett namn för t.ex en variabel • Kan bestå av bokstäver,siffror, _ och & • Får inte börja med siffra • Kan innehålla valfritt antal tecken • Java gör skillnad på STORA och små bokstäver
Primitiva datatyper • Java har stöd för ett antal för-definierade datatyper boolean true/falsechar (16-bita Unicode)byte, short (16-bitars heltal)int (32-bitars heltal)long (64-bitars heltal)float (32-bitars flyttal)double (64-bitars flyttal) • Av dessa kan variabler deklareras • String kan ses som primitiv datatyp
Variabler • Är en plats i datorns minne • Används för att spara data • Måste deklareras med datatypoch namn innan de används // Olika exempel på deklarationerint heltal;int heltal2;double stortDecimaltal;char ettTecken;boolean sant, falskt;float 1tal; // EJ TILLÅTET NAMNint talet = 14;String s = "Java är kul!";
Escape-sekvenser • Dessa escape-sekvenser finns: \n Infogar en radbrytning\t Infogar en tabbstop\\ Skriver ut en ’backslash’\" Skriver ut en ’dubbelfnutt’ • Dessa koder kan användas för åäö å alt + 0902ä alt + 0900ö alt + 0916Å alt + ???? (någon som vet)Ä alt + 0910Ö alt + 0921
Operatorer • Används i uttryck tillsammans med de fördefinierade typerna Aritmetiska + - / * (++, --)Jämförelse < > <= >= == !=Booleska && || !Bitoperatorer & | ~Skiftoperatorer << >> >>>Tilldelning =
Kontrollflöden • Kontrollflödeskonstruktionernai Java är: • Villkorskonstruktioner:if-else och switch • Iteration:while, do-while och for • Avbrott:break, continue och return
Klasser Och Objekt • Javaprogram beskrivs i klasser • En klass är en typdefinition av något • En klass består av fält och metoder • fält: data som ska associeras till klassen • metod: operationer som ska utföras Klass Fält (medlemsvariabler) Metoder • Satser • Villkor • Iterationer (loopar)
Klasser Och Objekt Klass Objekt Person Namn typ typ - Name : String- Pnr : String Fält(data) Kalle: Person Stina: Person Metoder (beteende) + setName (n:String)+ getName : String+ setPnr (p:String)+ getPnr : String name = "Kalle"pnr ="710123" name = "Stina"pnr ="780421" • Av klassen skapas objekt… • …som är förekomster av klassen
Koden För Klassen Person publicclass Person{ // Fältprivateint pnr; private String namn; // Metoderpublicvoid setNamn(String namn) {this.namn = namn; }publicString getNamn() {return namn; }}
Operatorer (forts) • ”Special” operatorer: • new – skapa objekt av en klass Person olle = new Person("Olle", "710123"); • (cast) – ändra typ på ett uttryck double a = 12.7;int b = (int)a; // b har nu värdet 12 • instanceof – testa typen på objekt if (olle instanceof Person) System.out.println("Olle är en person");elseif (olle instanceof Djur) System.out.println("Olle är ett djur");
Arv Fordon Personbil Lastbil Sportbil Terrängbil • Nya klasser skapas av befintliga • Har samma egenskaper • Kan lägga till eller göra om