Benutzer-Werkzeuge

Webseiten-Werkzeuge


unterschiede_zu_java: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
unterschiede_zu_java:start [2021/03/04 07:34] Martin Pabstunterschiede_zu_java:start [2021/03/04 07:49] – [Datentypen] Martin Pabst
Zeile 71: Zeile 71:
   * die Klassen ''WebSocket'' und ''WebSocketClient'' zur Programmierung von Chat-Programmen, Netzwerkspielen u.ä.   * die Klassen ''WebSocket'' und ''WebSocketClient'' zur Programmierung von Chat-Programmen, Netzwerkspielen u.ä.
   * sowie eine eingebaute umfangreiche Grafikbibliothek, die die Programmierung einfacher Spiele möglich macht   * sowie eine eingebaute umfangreiche Grafikbibliothek, die die Programmierung einfacher Spiele möglich macht
- \\ +
 **Links:** **Links:**
   * [[https://www.mathe-pabst.de/java/api_documentation.html|JavaDoc-ähnline Übersicht über alle Klassen von LearnJ]]   * [[https://www.mathe-pabst.de/java/api_documentation.html|JavaDoc-ähnline Übersicht über alle Klassen von LearnJ]]
-  * [[api:documentation:start|Dokumentation der Klassenbibliothek mit Erklärungen und vielen interaktiven Beispielen]]+  * [[api:documentation:start|Dokumentation der Klassenbibliothek mit Erklärungen und vielen Beispielprogrammen]] 
 +  * [[api:documentation:grafik:start|Dokumentation der Grafikklassen mit Erklärungen und vielen Beispielprogrammen]] 
 +  * [[api:documentation:spiele:start|Dokumentation der Möglichkeiten zur Spieleprogrammierung mit vielen Beispielprogrammen]]
  
 +== Hier ein einfaches Beispiel zur Verwendung der Grafikklassen ==
 <HTML> <HTML>
 +<div class="java-online" style="height: 400px; width: 100%" data-java-online="{'withBottomPanel': false, 'id': 'Feuerwerk'}">
 +<script type="text/plain" title="Feuerwerk.java">
 +new Feuerwerk();
  
-<div class="java-online" style="height: 400pxwidth: calc(100% - 20px)" data-java-online="{'withBottomPanel': false}">+class Feuerwerk extends Actor { 
 +    
 +   public void act() { 
 +      if(Math.random() < 0.03) { 
 +          
 +         int funkenzahl Math.floor(Math.random() * 50 + 30); 
 +         int farbe Math.floor(Math.random() * 0xffffff); 
 +         double x = Math.random() * 400 + 200; 
 +         double y Math.random() * 600; 
 +         double lebensdauer = 60 + Math.random() * 60; 
 +         for(int i = 0; i < funkenzahl; i++) { 
 +            new Funke(x, y, farbe, lebensdauer); 
 +         } 
 +         Sound.playSound(Sound.cannon_boom);
  
-<script type="text/plain" title="Test1.java"> +      } 
-new World(800600); +   } 
-Rectangle r = new Rectangle(10, 100300100); + 
-r.setFillColor(Color.green); +
-r.setBorderColor(Color.darkred); + 
-r.rotate(30); +class Funke extends Circle { 
-Circle c new Circle(200, 200, 50); +   double vx; 
-c.setAlpha(0.8); +   double vy; 
-Sprite s new Sprite(400300, SpriteLibrary.Ship_1); +   double lebensdauer;           // lebensdauer in 1/30 s 
-s.scale(0.3);+ 
 +   Funke(double x, double y, int farbedouble lebensdauer{ 
 +      super(xy4); 
 +      double winkel = Math.random() * 2 * Math.PI
 +      double v = Math.random() * 15 + 5
 +      vx = v * Math.cos(winkel); 
 +      vy v * Math.sin(winkel); 
 +      setFillColor(farbe); 
 +      this.lebensdauer lebensdauer; 
 +   } 
 + 
 +   public void act() { 
 +      lebensdauer--; 
 +      move(vxvy); 
 +      vy = vy + 0.2; 
 +      if(lebensdauer < 30) { 
 +         setAlpha(lebensdauer / 30); 
 +      } 
 +      if(isOutsideView() || lebensdauer < 0) { 
 +         destroy(); 
 +      } 
 +   } 
 + 
 +}
 </script> </script>
 </div> </div>
- 
 </HTML> </HTML>
  \\   \\ 
Zeile 122: Zeile 163:
   * lokale Variablen und Parameter können als ''final'' deklariert werden.   * lokale Variablen und Parameter können als ''final'' deklariert werden.
   * Generics, z.B. ''class Liste<K> { ... }''   * Generics, z.B. ''class Liste<K> { ... }''
-  * Variablendeklaration mit ''var'' ist möglich ([[https://blog.codefx.org/java/java-10-var-type-inference/||local variable type inference]])+  * Das Schlüsselwort ''var'' aus Java 11 ([[https://blog.codefx.org/java/java-10-var-type-inference/|local variable type inference]]) zur Deklarationen von initialisierten Variablen ohne explizite Typangabe, \\ z.B.: ''var i = 10;'' oder ''var liste = new ArrayList<Integer>();'' 
 +  * Instanzierung von Generics ohne Angabe der Typen in '<>', z.B. ''ArrayList<Integer> liste = new ArrayList<>();'' 
 +  * Wrapper-Klassen ''Character'', ''Boolean'', ''Integer'', ''Float'' und ''Double'' mit [[https://docs.oracle.com/javase/tutorial/java/data/autoboxing.html|Auto-Boxing/Unboxing]]
  
 ==== Operatoren ==== ==== Operatoren ====
unterschiede_zu_java/start.txt · Zuletzt geändert: 2023/03/22 10:10 von Martin Pabst

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki