Eigene Methoden im Lisa-Applet

Eigene Methoden bieten sich immer dann an, wenn eine bestimmte Abfolge von Zeichenbefehlen wiederholt werden soll, z.B. ein Quadrat.

/**************************************
 *  Quadratreihe                      *
 **************************************/
 
import java.applet.*;                                                                   
import java.awt.*;                                                                       
 
public class QuadratR extends Applet               
{ \\ Dateiname: QuadratR.java
    Lisa l;   
 
    private void quadrat(int laenge)    //Signatur ohne Parameter: quadrat()
    {
        for(int i = 0; i < 4; i++)
        {
            l.vw(laenge);               //wenn ohne Parameter: hier l.vw(100);
            l.li(90);                   //Aufruf der Methode (s.u.) dann als quadrat(); 
        }
    }                           
 
    public void paint(Graphics g)                                                
    {  
        l=new Lisa(g,500); 
 
        l.sh();             //Aufruf fertiger Lisa-Methoden, 
        l.auf(-250,50);     //auf benötigt zwei Parameterwerte für die Koordinaten,
        l.sa();             //sh und sa sind parameterfrei
 
        for(int i = 1; i <= 5; i++)
        {
            quadrat(100);  //die Methode quadrat wird aufgerufen, für
                           //den Parameter laenge wird der Wert 100 übergeben
            l.vw(100);
        }
 
    } //Ende von paint                                                                                                 
 
}//Ende von class

Methode ohne Parameter

Wenn die Befehlsfolge in der Methode bei jedem Aufruf exakt die gleiche Zeichnung erzeugen soll, wird eine Methode ohne Parameter verwendet, z.B.

private void quadrat() { }

Alles, was in den geschweiften Klammern steht wird dann bei jedem Aufruf der Methode mit quadrat() ausgeführt.

Methode mit Parameter

Wenn man z.B. die Möglichkeit haben will, die Zeichnung mal größer, mal kleiner zu zeichnen, bietet sich die Übergabe der Grundlänge für die Zeichnung als Parameter an, z.B.

private void quadrat(int laenge) { }

In den geschweiften Klammern wird dann beim Zeichenbefehl für die Linie kein fester Wert, sondern der Paramter eingesetzt:

l.vw(laenge);

Die Methode wird dann unter Angabe des gewünschten Wertes aufgerufen, z.B.

quadrat(100); oder quadrat(50);

Soll mehr als ein Parameter übergeben werden, z.B. neben der Länge noch die Farbe, werden die gewünschten Parameter als Liste in die Klammern eingefügt, im Beispiel

private void quadrat(int laenge, int farbe) { l.lisafarbe(farbe); l.vw(laenge); }

Dabei muss man beim Übergeben der Werte dann auf die Reihenfolge achten:

quadrat(100, 6); zeichnet eine 100 px lange Linie in Rot,

quadrat(6, 100); zeichnet dann eine 6 px lange Linie in Weiß (da alle Farbwerte > 13 die Zeichenfarbe Weiß ergeben).

schule/if/lisa/methoden.txt · Zuletzt geändert: 2018/05/29 23:54 von 127.0.0.1
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0