Benutzer-Werkzeuge

Webseiten-Werkzeuge


klassen2:inheritance:flyingrectangle:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
klassen2:inheritance:flyingrectangle:start [2020/05/03 10:30] – [2. Erweitern der Klasse Rectangle] Martin Pabstklassen2:inheritance:flyingrectangle:start [2020/05/03 10:36] – [3. Animation] Martin Pabst
Zeile 87: Zeile 87:
  
    public FlyingRectangle() {    public FlyingRectangle() {
-      // Rufe den Konstruktor der Basisklasse auf und setze Position und Größe: left: 360, top: 720, width: 80, height: 80 +      // Rufe den Konstruktor der Oberklasse auf und setze Position und Größe: left: 360, top: 720, width: 80, height: 80 
       super(360, 720, 80, 80);       super(360, 720, 80, 80);
              
       // setze eine zufällige Farbe und Durchsichtigkeit       // setze eine zufällige Farbe und Durchsichtigkeit
       setFillColor(Math.round(Math.random() *(256 *256 * 256 - 1)), Math.random()*0.8+0.2);       setFillColor(Math.round(Math.random() *(256 *256 * 256 - 1)), Math.random()*0.8+0.2);
 +   }
 +
 +}</script>
 +
 +</div>
 +
 +</HTML>
 +
 +
 +==== 3. Animation ====
 +In der Grafikbibliothek von LearnJ besitzt jedes graphische Objekt eine Methode ''act()'', die vom System 30-mal pro Sekunde aufgerufen wird. Die Idee dazu kommt aus {{https://www.greenfoot.org/files/javadoc/index-all.html|Greenfoot}}. Wenn wir diese Methode in der Klasse ''FlyingRectangle'' implementieren, überschreiben wir damit die gleichnamige Methode der Oberklasse ''Rectangle'', so dass ab jetzt **unsere** Methode 30-mal pro Sekunde aufgerufen wird. Wir können unser Rechteck so beispielsweise ganz einfach drehen lassen: 
 +
 +<HTML>
 +
 +<div class="java-online" style="height: 350px; width: 100%" data-java-online="{'withBottomPanel': false}">
 +
 +<script type="text/plain" title="FlyingRectangle.java">
 +new World(800, 800);
 +new FlyingRectangle();
 +
 +class FlyingRectangle extends Rectangle {
 +
 +   public FlyingRectangle() {
 +      // Rufe den Konstruktor der Oberklasse auf und setze Position und Größe: left: 360, top: 720, width: 80, height: 80 
 +      super(360, 720, 80, 80);
 +      
 +      // setze eine zufällige Farbe und Durchsichtigkeit
 +      setFillColor(Math.round(Math.random() *(256 *256 * 256 - 1)), Math.random()*0.8+0.2);
 +   }
 +
 +   public void act(){
 +      rotate(4);
    }    }
  
klassen2/inheritance/flyingrectangle/start.txt · Zuletzt geändert: 2021/12/29 11:29 von 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki