<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://cloud.mso-hef.de/infowiki/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://cloud.mso-hef.de/infowiki/feed.php">
        <title>Infowiki q1</title>
        <description></description>
        <link>https://cloud.mso-hef.de/infowiki/</link>
        <image rdf:resource="https://cloud.mso-hef.de/infowiki/lib/tpl/bootstrap3/images/favicon.ico" />
       <dc:date>2026-05-11T14:05:08+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:aufgabevererbung2&amp;rev=1499769898&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:eventlistener_thread&amp;rev=1510648089&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:eventlistener&amp;rev=1505724123&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe1loesungen&amp;rev=1499756789&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe2loesungen&amp;rev=1499756859&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe3loesungen&amp;rev=1499756909&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe4loesungen&amp;rev=1499756963&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-felder&amp;rev=1499756775&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-fxs2&amp;rev=1660892271&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-fxsl&amp;rev=1505897302&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-methoden&amp;rev=1502691345&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-methoden2&amp;rev=1499764220&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop1&amp;rev=1499768193&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop2&amp;rev=1499769111&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop3&amp;rev=1499769924&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop4&amp;rev=1499770032&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-rekursion&amp;rev=1512377497&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-sortierverfahren&amp;rev=1499762599&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-sortierverfahren2&amp;rev=1511172248&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-sortierverfahrenquicksort&amp;rev=1499764050&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-string_verarbeiung&amp;rev=1499891621&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-swing&amp;rev=1499891384&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-trycatch&amp;rev=1505900289&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_buntes&amp;rev=1499755247&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_linien&amp;rev=1499755121&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_muster&amp;rev=1499755178&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_rechtecke&amp;rev=1499755149&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesungschleifen4&amp;rev=1499787231&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesungschleifen6&amp;rev=1499787346&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:mouselistener&amp;rev=1505757924&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:oopklein&amp;rev=1506960418&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:parser_turing_keller&amp;rev=1569052779&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:programmieren_mit_java&amp;rev=1511172171&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:programmieren_mit_java2&amp;rev=1660892243&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:rekursiver_ausdruck_fuer_binomialkoeffizient&amp;rev=1635685842&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:vererbungaufgabe3loesung&amp;rev=1499769935&amp;do=diff"/>
                <rdf:li rdf:resource="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:weitere_schleifenarten&amp;rev=1499787173&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://cloud.mso-hef.de/infowiki/lib/tpl/bootstrap3/images/favicon.ico">
        <title>Infowiki</title>
        <link>https://cloud.mso-hef.de/infowiki/</link>
        <url>https://cloud.mso-hef.de/infowiki/lib/tpl/bootstrap3/images/favicon.ico</url>
    </image>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:aufgabevererbung2&amp;rev=1499769898&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T10:44:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:aufgabevererbung2</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:aufgabevererbung2&amp;rev=1499769898&amp;do=diff</link>
        <description>public class Fahrzeug
{
       private String Farbe;
       private String Besitzer;
       
       Fahrzeug(String Farbe, String Besitzer)
       {
         this.Farbe = Farbe;
         this.Besitzer = Besitzer;
       }
       
       public String getFarbe()
       {
         return Farbe;
       }
       
       public void verkaufen(String neuerBesitzer)
       {
         Besitzer = neuerBesitzer;
       }
}

public class Auto extends Fahrzeug
{
   private double Verbrauch;
   private doubl…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:eventlistener_thread&amp;rev=1510648089&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-11-14T08:28:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:eventlistener_thread</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:eventlistener_thread&amp;rev=1510648089&amp;do=diff</link>
        <description>Zunächst wieder die Hauptklasse mit der MAIN (UFO)


package ufo;
	import java.awt.*;
	import java.awt.event.*;
	import javax.swing.*;

	 
	public class Ufo extends JFrame{
		Container c;           
		Zeichenbrett z;   

		public Ufo(){
			super(&quot;Ufo&quot;);
			 c = getContentPane();      
			 z = new Zeichenbrett(); //Alles was passiert, passiert im Zeichenbrett, 
			    // ist ne saubere Lösung oder?  
			 z.setFocusable(true);
			 c.add(z);
			 setTitle(&quot;Ufo&quot;);
			 setSize(830,700);
			 setVisible…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:eventlistener&amp;rev=1505724123&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-09-18T08:42:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:eventlistener</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:eventlistener&amp;rev=1505724123&amp;do=diff</link>
        <description>Listener dienen zur Kommunikation zwischen dem Benutzer eines Programms und dem Programm selbst. Wenn ein Benutzer mit einem grafischen Element, beispielsweise einem JButton oder einer JList, interagiert, werden bestimmte Methoden ausgeführt. Diese Methoden kann der Programmierer überschreiben und somit seine eigenen Aktionen programmieren, welche bei einem Klick auf einen JButton o.ä. ausgeführt werden.</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe1loesungen&amp;rev=1499756789&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T07:06:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:felderaufgabe1loesungen</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe1loesungen&amp;rev=1499756789&amp;do=diff</link>
        <description>Schon im Programm als Methode punktz2 eingebaut. Alle Noten sind jetzt gleich verteilt, während bei der Würfelsimulation sich eine Normalverteilung mit Schwerpunkt in der Mitte ergibt. Die Mittelwerte sind gleich, die Standardabweichung ist bei punktz2 größer, da die Noten im Mittel stärker vom Mittelwert abweichen.</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe2loesungen&amp;rev=1499756859&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T07:07:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:felderaufgabe2loesungen</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe2loesungen&amp;rev=1499756859&amp;do=diff</link>
        <description>(1)	


long[] feld = new long[30] ;

(2)	


0 bis 29

(3)	 

    
feld[4] = 12345 ;

(4)	    


for (int i = 0 ; i &lt;= 29 ; i++)
    {
      feld[i] = 0 ;
    }

(5 und 6)	


jTextArea1.setText(&quot;&quot;) ;
     for (int i = 0 ; i &lt;= 29 ; i++)
     {
       String ausgabe =
          String.valueOf(i)+&quot;   &quot;+String.valueOf(feld[i])+&quot;\n&quot;;
       jTextArea1.append(ausgabe) ;
 }</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe3loesungen&amp;rev=1499756909&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T07:08:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:felderaufgabe3loesungen</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe3loesungen&amp;rev=1499756909&amp;do=diff</link>
        <description>import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

/**
  *
  * Beschreibung
  *
  * @version 1.0 vom 02.10.2010
  * @author
  */

public class aufgabe3 extends JFrame {
  // Anfang Attribute
  private JTextArea jTextArea1 = new JTextArea(&quot;&quot;);
  private JButton jButton1 = new JButton();
  private JTextField jTextField1 = new JTextField();
  private JLabel jLabel1 = new JLabel();
  // Ende Attribute

  public aufgabe3(String title) {
    // Frame-Initial…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe4loesungen&amp;rev=1499756963&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T07:09:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:felderaufgabe4loesungen</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:felderaufgabe4loesungen&amp;rev=1499756963&amp;do=diff</link>
        <description>import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

/**
  *
  * Beschreibung
  *
  * @version 1.0 vom 02.10.2010
  * @author
  */

public class aufgabe4 extends JFrame {
  // Anfang Attribute
  private JButton jButton1 = new JButton();
  private JTextField jTextField1 = new JTextField();
  private JLabel jLabel1 = new JLabel();
  private JLabel jLabel2 = new JLabel();
  private JTextField jTextField2 = new JTextField();
  // Ende Attribute

  public auf…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-felder&amp;rev=1499756775&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T07:06:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-felder</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-felder&amp;rev=1499756775&amp;do=diff</link>
        <description>Felder

Die folgende Tabelle zeigt den fiktiven Ausfall der zentralen Informatikarbeit in der Jahrgangsstufe Q1 der MSO:

Wie könnte man einen solchen Notenspiegel in JAVA realisieren? Sicher könnte man 16 Variablen vom Typ int deklarieren wie anzahlDer0, anzahlDer1, usw. - doch würden die Pro-gramme dadurch äußerst unhandlich. Um die Tabelle einzugeben bräuchte man 16 Eingabe-befehle, für die Ausgabe nochmals 16 Befehle. Es wäre sinnvoll, wenn man „nummerierte“ Variablen hätte. Man kann das seh…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-fxs2&amp;rev=1660892271&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-08-19T06:57:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-fxs2</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-fxs2&amp;rev=1660892271&amp;do=diff</link>
        <description>package org.openjfx.javafx_maven_plugin;

import javafx.animation.KeyFrame;
import javafx.animation.Timeline;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Group;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.input.KeyEvent;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.util.Duration;

import java.io.IOException;

/**
…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-fxsl&amp;rev=1505897302&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-09-20T08:48:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-fxsl</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-fxsl&amp;rev=1505897302&amp;do=diff</link>
        <description>import java.io.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.filechooser.*;
 
public class FileChooser extends JPanel implements ActionListener 
{
    static private final String newline = &quot;\n&quot;;
    JButton openButton, saveButton;
    JTextArea log;
    JFileChooser fc;
    static JButton button;
    static File open;
    static File save;
   
 
    public FileChooser() {
        super(new BorderLayout());
 
        //Create the log first, because the ac…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-methoden&amp;rev=1502691345&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-08-14T06:15:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-methoden</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-methoden&amp;rev=1502691345&amp;do=diff</link>
        <description>Grafik und Methoden

Ernsthafte Programme sind in der Praxis viel zu groß, um aus einem Hauptprogramm allein zu bestehen. Man zerlegt deshalb Probleme in kleinere Teile, die von einem Teilprogramm realisiert werden. Mit dieser Modularisierung verfolgt man drei Ziele:</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-methoden2&amp;rev=1499764220&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T09:10:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-methoden2</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-methoden2&amp;rev=1499764220&amp;do=diff</link>
        <description>Methoden in Java

Wir verlassen jetzt zunächst die Grafikprogrammierung und betrachten einige andere Beispiele zu Funktionen. Zu Beginn soll eine JAVA-Funktion realisiert werden, die die Fakultät einer Zahl berechnet. Die Fakultät ist dabei wie folgt definiert:</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop1&amp;rev=1499768193&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T10:16:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-oop1</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop1&amp;rev=1499768193&amp;do=diff</link>
        <description>Vertiefung der OOP

Wir wollen uns die wichtigsten Begriffe der OOP nochmals an einem Beispiel klar machen. Wir erstellen dazu eine sehr simple Girokontenverwaltung.

Wir wiederholen zunächst den zentralen Gedanken der objektorientierten Programmierung (OOP). Dazu ziehen wir zunächst einen Vergleich zur klassischen Programmierung (auch wenn wir davon noch nicht allzu viel behandelt haben).</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop2&amp;rev=1499769111&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T10:31:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-oop2</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop2&amp;rev=1499769111&amp;do=diff</link>
        <description>Konstruktoren, Klassenvariablen und –methoden

Eine Konstruktor-Methode oder auch nur Konstruktor ist eine besondere Methodenart, die beim Erstellen eines Objekts aufgerufen wird - mit anderen Worten, wenn ein Objekt konstruiert wird. Im Gegensatz zu anderen Methoden kann man einen Konstruktor nicht direkt aufrufen. Wenn mit „new“ ein neues Objekt der Klasse erstellt wird, führt Java drei Aktionen aus:</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop3&amp;rev=1499769924&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T10:45:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-oop3</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop3&amp;rev=1499769924&amp;do=diff</link>
        <description>Die Vererbung ist ein zentrales Konzept der OOP und wesentlich für den Erfolg objektorientierter Sprachen. Eine Klasse kann von einer anderen Klasse alle Attribute und Methoden erben. Dazu können in dieser Subklasse neue Attribute und Methoden definiert werden, bzw. geerbte Methoden abgeändert werden. Die Klasse, von der etwas geerbt wird, wird als Basis- oder Superklasse bezeichnet. Damit lassen sich ganze Klassenhierarchien aufbauen.</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop4&amp;rev=1499770032&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T10:47:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-oop4</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-oop4&amp;rev=1499770032&amp;do=diff</link>
        <description>Zusammenfassung der bisherigen Begriffe aus der Objektorientierten Programmierung (OOP)

Klasse: Zusammenschluss von Attributen, Objekten und Methoden gleichartiger Objekte, das Schlüsselwort ist class.

Objekt (Sachverhalt): Instanz einer Klasse. Alle Objekte einer Klasse haben gleiche Attribute und Methoden, unterscheiden sich aber in ihren Attributwerten.</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-rekursion&amp;rev=1512377497&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-12-04T08:51:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-rekursion</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-rekursion&amp;rev=1512377497&amp;do=diff</link>
        <description>In Kapitel 9 wurde die Berechnung der Fakultät als Beispiel für die Einführung von Methoden benutzt. Die eigentliche Berechnung erfolgte damals mit Hilfe einer Schleife. Die Berechnung der Fakultät lässt sich jedoch auch anders auffassen: Fakultät von 20 ist nichts anderes als 20- mal Fakultät von 19, Fakultät von 19 ist 19-mal Fakultät von 18, usw. Eine solche Definition setzt allerdings voraus, dass man mindestens einen konkreten Wert der Fakultät kennt (z.B. ist 1!=1). Zusammengefasst mit der…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-sortierverfahren&amp;rev=1499762599&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T08:43:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-sortierverfahren</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-sortierverfahren&amp;rev=1499762599&amp;do=diff</link>
        <description>Zwei einfache Sortierverfahren

Ein zentrales Problem in der Informatik besteht im Sortieren von Daten. Das setzt voraus, dass zwischen den Einzeldaten eine Größer-Kleiner-Beziehung existiert, was z.B. bei Zahlen selbst-verständlich ist. Aber auch Zeichen- und Zeichenketten erlauben eine solche Beziehung, die durch das Alphabet gegeben ist. Diese lexikalische Anordnung ist in den meisten Programmier-sprachen implementiert, so dass z.B. in JAVA ein Vergleich der beiden Strings „papst“ &gt; „papier“ …</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-sortierverfahren2&amp;rev=1511172248&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-11-20T10:04:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-sortierverfahren2</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-sortierverfahren2&amp;rev=1511172248&amp;do=diff</link>
        <description>BubbleSort und Minsort

 
/**
  *
  * Beschreibung
  *
  * @version 1.0 vom 06.11.2017
  * @author 
  */

public class Sortieren {
  int j = 0;
  public int[] tausche(int[] feld, int i, int j){
    int temp = feld[j];
    feld[j] = feld[i];
    feld[i] = temp;  
    return feld;
  }
  public int findemin(int j, int[] feld){
    int min=j; 
    for (int i=j;i&lt;feld.length ;i++ ) {
      if (feld[i]&lt;feld[min]) {
        min=i ;
      } // end of if
      //System.out.println(feld[min]);
    } // en…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-sortierverfahrenquicksort&amp;rev=1499764050&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T09:07:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-sortierverfahrenquicksort</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-sortierverfahrenquicksort&amp;rev=1499764050&amp;do=diff</link>
        <description>Quicksort

Prinzip: Das Feld wird in zwei Teilfelder zerlegt, wobei im linken Teilfeld nur Elemente stehen, die kleiner oder gleich einem Vergleichselement sind, im rechten nur solche, die größer oder gleich sind. Das Verfahren wird mit den Teilfeldern solange fortgesetzt, bis nur noch Teilfelder mit einem Element vorhanden sind.$n$$\frac{1}{4}\cdot n$$\frac{1}{2}\cdot n$$\frac{5}{4}\cdot n$$k$$2^k=n$$k=\log_2(n)$$$k\cdot \frac{5}{4} \cdot n = \log_2(n) \cdot \frac{5}{4} \cdot n = \frac{5}{4}\cd…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-string_verarbeiung&amp;rev=1499891621&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-12T20:33:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-string_verarbeiung</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-string_verarbeiung&amp;rev=1499891621&amp;do=diff</link>
        <description>Das folgende Listing zeigt die wesentlichen Teile der Lösung für das Bruchrechenprogramm (Kapitel 19 Aufgabe 6):


// Klasse Bruch Aufgabe 6 Kapitel 19
public class Bruch //eine Klasse für Bruch
{
   private long zaehler = 1 ;
   private long nenner = 1 ;    // Das sind die Attribute
     // das Schlüsselwort private verhindert, das von außen auf die Attribute
     // zugegriffen werden kann. Stichwort: Datenkapselung
   private long ggT (long a, long b)  // eine Hilfsmethode, die nicht außer-
 …</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-swing&amp;rev=1499891384&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-12T20:29:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-swing</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-swing&amp;rev=1499891384&amp;do=diff</link>
        <description>Eine einfache JAVA FX-Oberfläche


import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
 
public class HelloWorld extends Application {
    
    @Override
    public void start(Stage primaryStage) {
        Button btn = new Button();
        btn.setText(&quot;Say &#039;Hello World&#039;&quot;);
        btn.setOnAction(new EventHandler&lt;Ac…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-trycatch&amp;rev=1505900289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-09-20T09:38:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:java-trycatch</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:java-trycatch&amp;rev=1505900289&amp;do=diff</link>
        <description>Exceptions

Fehler beim Programmieren sind unvermeidlich. Schwierigkeiten bereiten nur die unkalkulierbaren Situationen – hier ist der Umgang mit Fehlern ganz besonders heikel. Java bietet die elegante Methode der Exceptions, um mit Fehlern flexibel umzugehen.</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_buntes&amp;rev=1499755247&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T06:40:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:loesung_buntes</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_buntes&amp;rev=1499755247&amp;do=diff</link>
        <description>Zum Bewegen des Ufos schachteln wir das Programm zum Zeichnen einfach in eine FOR-Schleife, die den x-Wert der Position jeweils um 1 erhöht. Damit man den Ablauf erkennen kann, bauen wir noch eine Verzögerungsfunktion ein. Diese besteht aus einer weiteren FOR-Schleife, die einfach als Beschäftigungstherapie die Zahl j von 1 bis zu einer eingegebenen Grenze hochzählt. Wie oft das gemacht wird, bestimmt die äußere Schleife durch einen übergebenen Parameter.</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_linien&amp;rev=1499755121&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T06:38:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:loesung_linien</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_linien&amp;rev=1499755121&amp;do=diff</link>
        <description>public void paint(Graphics g)
  {
    int x1,x2,y1,y2;
    int breite=getWidth();  //Breite des Fensters
    int hoehe=getHeight();  //Höhe des Fensters
    g.clearRect(0,0,breite,hoehe) ;
    for(int i=1; i&lt;= 100; i++)
    {
      //Bestimme 4 Zufallszahlen für die Koordinaten
      //des Start- und Endpunkts der Linie:
      x1=(int)(breite*Math.random());
      x2=(int)(breite*Math.random());
      y1=(int)(hoehe*Math.random());
      y2=(int)(hoehe*Math.random());
      //Zeichne die Linie:
…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_muster&amp;rev=1499755178&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T06:39:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:loesung_muster</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_muster&amp;rev=1499755178&amp;do=diff</link>
        <description>Ändere die letzte Aufgabe so ab, dass  nur grüne Linien auf schwarzem Hintergrund gezeichnet werden. Das Abändern des Hintergrunds passiert mit dem Befehl setBackground, der einen Parameter vom Typ Color erwartet, also z.B. setBackground(Color.black).</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_rechtecke&amp;rev=1499755149&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T06:39:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:loesung_rechtecke</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesung_rechtecke&amp;rev=1499755149&amp;do=diff</link>
        <description>public void paint(Graphics g)
  {
    int breite=getWidth();
    int hoehe=getHeight();
    int xOben,xUnten;
    int y1=40;
    int y2=hoehe-20;
    for(int i=1; i&lt;=20; i++)
    {
      //Durchlaufe alle oberen Punkte:
      xOben = i*breite/21;
      for(int j=1; j&lt;=20; j++)
      {
        //Durchlaufe alle unteren Punkte:
        xUnten=j*breite/21;
        //Zufällige Farbe:
        int rot=(int)(256*Math.random());
        int grün=(int)(256*Math.random());
        int blau=(int)(256*Math.…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesungschleifen4&amp;rev=1499787231&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T15:33:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:loesungschleifen4</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesungschleifen4&amp;rev=1499787231&amp;do=diff</link>
        <description>public void jButton1_ActionPerformed(ActionEvent evt)
  {
    double grenze = Double.parseDouble(jTextField1.getText());
    double bevoelkerung = 6.5;
    int jahr = 2006;
    // Verwende eine while- statt einer for-Schleife, weil die Anzahl der
    // Durchläufe vorher nicht bekannt ist.
    // Eine do-while-Schleife hat mindestens einen Durchlauf und ist daher
    // schlechter geeignet als eine while-Schleife!
    while(bevoelkerung &lt; grenze)
    {
      bevoelkerung = bevoelkerung * 1.018;
…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesungschleifen6&amp;rev=1499787346&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T15:35:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:loesungschleifen6</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:loesungschleifen6&amp;rev=1499787346&amp;do=diff</link>
        <description>Hier müssen einige Eigenschaften des jTextAreas im Objektinspektor passend beeinflusst werden
•	TabSize	setzt Abstände für im Text verwendete Tabulatoren 	(Textverarbeitung) fest (hier auf 4).
•	LineWrap	schaltet einen automatischen Zeilenumbruch am rechten Ende 	ein (hier TRUEe).
•	.WrapStyleWord	legt fest, dass nicht mitten im Wort umgebrochen wird (TRUE).</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:mouselistener&amp;rev=1505757924&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-09-18T18:05:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:mouselistener</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:mouselistener&amp;rev=1505757924&amp;do=diff</link>
        <description>import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class PunkteVerbinden extends JFrame {
  Container c;           
  Zeichenbrett z;        
  
  public PunkteVerbinden() { 
    c = getContentPane();      
    z = new Zeichenbrett(); //Alles was passiert, passiert im Zeichenbrett, 
    // ist ne saubere Lösung oder?  
    c.add(z);               
  }
  
  public static void main(String[] args) {
     PunkteVerbinden fenster = new PunkteVerbinden();
     fenster.setTitle(&quot;…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:oopklein&amp;rev=1506960418&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-10-02T16:06:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:oopklein</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:oopklein&amp;rev=1506960418&amp;do=diff</link>
        <description>public class Fahrzeug {
  //Attribute Eigenschaften Werte usw...
  String autofarbe = null;
  int leistung = 0;
  int anzahlplätze =0; 
  int kilometerstand =0;


  //  Methoden          
  public Fahrzeug(String autofarbe,int leistung,int anzahlplätze){
    this.autofarbe = autofarbe;
    this.leistung = leistung;
    this.anzahlplätze = anzahlplätze;
  }
  
  public void addiereKilometer(int zuaddierendeKilometer){
    kilometerstand = kilometerstand +  zuaddierendeKilometer;
  }
  
  public i…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:parser_turing_keller&amp;rev=1569052779&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-09-21T07:59:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:parser_turing_keller</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:parser_turing_keller&amp;rev=1569052779&amp;do=diff</link>
        <description>package infix;

public class InfixCalulator {
	 private String rechnung; // die vollständige Rechnung
	  private int pos; // Position des nächsten Zeichens
	  private char aktuell; // das aktuelle Zeichen
	  // Stellt einen gewöhnlichen Infix-Ausdruck mit den vier
	  // Grundrechenarten und Klammern dar, z.B. 3*(-(2+4))
	  public InfixCalulator(String rechnung){
	    this.rechnung=rechnung+&quot;_&quot;;//hinten ein Stopzeichen
	    System.out.println(this.rechnung);
	  }
	 
	  // Rechnet einmal durch
	  …</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:programmieren_mit_java&amp;rev=1511172171&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-11-20T10:02:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:programmieren_mit_java</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:programmieren_mit_java&amp;rev=1511172171&amp;do=diff</link>
        <description>Liebe Schülerinnen und Schüler,
dieser Kurs soll die Inhalte im Unterricht vervollständigen und zum selbstständigen Lernen anregen. Die Kapitel setzen natürlich voraus, dass ihr den Unterrichtsstoff aus der E2 verstanden und geübt habt.

	*  weitere Schleifenarten
	*</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:programmieren_mit_java2&amp;rev=1660892243&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-08-19T06:57:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:programmieren_mit_java2</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:programmieren_mit_java2&amp;rev=1660892243&amp;do=diff</link>
        <description>Dieser kleine fakultative Kurs ist für Schülerinnen und Schüler gedacht, die sich gerne tiefgründiger mit JAVA beschäftigen wollen. Die folgenden Themen sind natürlich nicht erschöpfend, bieten aber gute Anhaltspunkte für die weitergehende Programmierung.
Typische Dinge die ich für ein</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:rekursiver_ausdruck_fuer_binomialkoeffizient&amp;rev=1635685842&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-10-31T13:10:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:rekursiver_ausdruck_fuer_binomialkoeffizient</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:rekursiver_ausdruck_fuer_binomialkoeffizient&amp;rev=1635685842&amp;do=diff</link>
        <description>/**
 *
 * Beschreibung
 *
 * @version 1.0 vom 04.10.2021
 * @author Zerr
 */

public class fakundbin {
  
  
  public static int fac ( int n ) { 
    if ( n == 0) { 
    return 1 // Basisfall 
    ;} 

    
    else {  
       return n * // selbst gel�ster Teil 
       fac (n-1); // rekursiver Aufruf } }
         }
  }  

      
   public static long bin (int n, int k ) {     
    return 0;
    }  
      

  public static void main(String[] args) {
    System.out.println(fac(5));
  } // end of m…</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:vererbungaufgabe3loesung&amp;rev=1499769935&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T10:45:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:vererbungaufgabe3loesung</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:vererbungaufgabe3loesung&amp;rev=1499769935&amp;do=diff</link>
        <description>Mögliche Lösung zu Aufgabe 3:

a)	Die Klasse Object ist die Superklasse aller Klassen in Java. Jede Klasse ohne extends-Klausel ist direkt aus ihr abgeleitet. Sie besitzt ein paar elementare Methoden, die für alle Arten von Objekten nützlich sind.</description>
    </item>
    <item rdf:about="https://cloud.mso-hef.de/infowiki/doku.php?id=q1:weitere_schleifenarten&amp;rev=1499787173&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-07-11T15:32:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>q1:weitere_schleifenarten</title>
        <link>https://cloud.mso-hef.de/infowiki/doku.php?id=q1:weitere_schleifenarten&amp;rev=1499787173&amp;do=diff</link>
        <description>Weitere Schleifenarten

Die Aufgabe 10 zu Ulams Folge aus dem Kapitel 8 ist nur ungünstig mit einer FOR-Schleife zu lösen. Es gibt zwei weitere Schleifenarten in JAVA, bei denen die Zahl der Durchläufe nicht bekannt sein muss. Sinnvoll ist hier eine DO-WHILE-Schleife oder eine WHILE-Schleife.
Eine DO-WHILE-Schleife besitzt folgendes Syntax-Diagramm:</description>
    </item>
</rdf:RDF>
