Ladda ner presentationen
Presentation laddar. Vänta.
1
Föreläsning 9 Programmeringsteknik och Matlab 2D1312/2D1305
Föreläsning 9 Programmeringsteknik och Matlab 2D1312/2D1305 Repetition Instansvariabler och klassvariabler Klassmetoder och Instansmetoder Exception Filinläsning med klassen Scanner Slumpa ett numme Vahid Mosavat, Nada
2
Programmeringsteknik och Matlab
Repetition Instansmetoder kan endast anropas via en instans av klassen. Klassmetoder kan anropas både via en instans eller via klassnamnet. Men anropet ska ske via klassnamnet. Vahid Mosavat, Nada
3
Programmeringsteknik och Matlab
Variabler deklareras instansvariabler 1.utanför metoder 2. utan static klassvariabler 2.med static lokala variabler 1.inuti en metod 2.utan static Vahid Mosavat, Nada
4
Programmeringsteknik och Matlab
Metod deklareras Klassmetod med static med returtyp Instansmetod utan static Konstruktor utan returtyp samma namn som klassen Vahid Mosavat, Nada
5
Klassmetoder och Instansmetoder
Programmeringsteknik och Matlab Klassmetoder och Instansmetoder Normalt anropas alltid en instansmetod via ett objekt (en instans av klassen). Color röd = new Color(255,0,0); Color mörkröd = röd.darker(); Om en metod deklareras med static (klassmetod) kan den anropas direkt från klassen - utan att man behöver skapa något objekt. double x = Math.sqrt(17); En klassmetod kan använda klassvariabler men för att använda instansvariabler så måste finnas ett objekt. Vahid Mosavat, Nada
6
Programmeringsteknik och Matlab
Skapa en klass för TV TV:en har 3 kanaler/program. De 3 kanalerna ska initieras vid instanseringen. Det ska finnas metod så att man kan byta kanal när man anropar metoden. Det ska finnas en metod som visar vad det är för program som sänds. Vahid Mosavat, Nada
7
Programmeringsteknik och Matlab
Klassen TV Vilka variabler ska klassen ha? Ska de vara instansvariabler eller klassvariabler? Vilka metoder ska klassen ha ska de vara klassmetoder eller instansmetoder? Vahid Mosavat, Nada
8
Programmeringsteknik och Matlab
Static när och varför? 200 nokia 200 PC för 5000 P-HUS 200 BMW 200 limpa Vahid Mosavat, Nada
9
Programmeringsteknik och Matlab
Static när och varför? 200 nokia 200 PC för 5000 P-HUS 200 BMW 200 limpa Vahid Mosavat, Nada
10
Programmeringsteknik och Matlab
Static när och varför? 200 nokia 200 PC för 5000 P-HUS 200 BMW 200 limpa Vahid Mosavat, Nada
11
Programmeringsteknik och Matlab
Static när och varför? 199 nokia 199 PC för 5000 P-HUS 199 BMW 199 limpa Vahid Mosavat, Nada
12
Programmeringsteknik och Matlab
Klassen skylt Vilka variabler ska klassen ha? Ska de vara instansvariabel eller klassvariabel. Vilka metoder ska klassen ha ska de vara instansmetod eller klassmetod? Vahid Mosavat, Nada
13
Programmeringsteknik och Matlab
Slumpa ett nummer För att generera ett slumptal finns det två olika sätt i java. Math.random() som returnerar ett tal av typen double som är större eller lika med 0.0 och mindre än 1.0 Klassen Random, där finns flera metoder som är mer användbar. Vahid Mosavat, Nada
14
Programmeringsteknik och Matlab
Filinläsning Man kan använda klassen Scanner för att läsa data från en fil istället för tangentbordet. /* följande kod skapar en instans av Scanner för att läsa från filen namnlista.txt */ Scanner infil = new Scanner( new File(”namnlista.txt”)); //följande läser första raden från filen String rad = infil.nextLine(); Vahid Mosavat, Nada
15
Programmeringsteknik och Matlab
Hantera ett särfall try block1 catch(Exception e) block2 Datorn försöker exekvera koden i block1. Om det blir något fel i någon sats så slutar exekveringen av koden som är kvar i block1 och datorn fortsätter exekvering av koden som finns i block2. Observera att kod i block2 exekveras ifall det blir något exekveringsfel i kod i block1. Vahid Mosavat, Nada
16
Programmeringsteknik och Matlab
Hantering av särfall Det finns en hel del fördefinierade exception klasser man kan använda. FileNotFoundException, när programmet vill öppna en fil som inte finns. ArithmeticException, när man t.ex dividerar ett tal med noll.(talet får inte vara noll) ArrayIndexOutOfBoundsException, när man vill komma ett index i en array som inte finns. Osv … Vahid Mosavat, Nada
Liknande presentationer
© 2024 SlidePlayer.se Inc.
All rights reserved.