www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Vorhilfe
  Status Geisteswiss.
    Status Erdkunde
    Status Geschichte
    Status Jura
    Status Musik/Kunst
    Status Pädagogik
    Status Philosophie
    Status Politik/Wirtschaft
    Status Psychologie
    Status Religion
    Status Sozialwissenschaften
  Status Informatik
    Status Schule
    Status Hochschule
    Status Info-Training
    Status Wettbewerbe
    Status Praxis
    Status Internes IR
  Status Ingenieurwiss.
    Status Bauingenieurwesen
    Status Elektrotechnik
    Status Maschinenbau
    Status Materialwissenschaft
    Status Regelungstechnik
    Status Signaltheorie
    Status Sonstiges
    Status Technik
  Status Mathe
    Status Schulmathe
    Status Hochschulmathe
    Status Mathe-Vorkurse
    Status Mathe-Software
  Status Naturwiss.
    Status Astronomie
    Status Biologie
    Status Chemie
    Status Geowissenschaften
    Status Medizin
    Status Physik
    Status Sport
  Status Sonstiges / Diverses
  Status Sprachen
    Status Deutsch
    Status Englisch
    Status Französisch
    Status Griechisch
    Status Latein
    Status Russisch
    Status Spanisch
    Status Vorkurse
    Status Sonstiges (Sprachen)
  Status Neuerdings
  Status Internes VH
    Status Café VH
    Status Verbesserungen
    Status Benutzerbetreuung
    Status Plenum
    Status Datenbank-Forum
    Status Test-Forum
    Status Fragwürdige Inhalte
    Status VH e.V.

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Java" - Java Programm
Java Programm < Java < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Java"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Java Programm: erläutern+beschreiben
Status: (Frage) beantwortet Status 
Datum: 17:32 Sa 14.01.2006
Autor: saoody

Aufgabe
Erläutern Sie die Funktion, Struktur und die Anwendung des Programms !

Hallo Leute,
also ich habe hier ein Java-Programm, bei dem ich jede Zeile beschreiben muss. Da Programmierung nicht so wirklich meine Sache ist, habe ich damit erhebliche Probleme. Ich habe es versucht, bin mir aber ziemlich unsicher.
Finde das ich die Zeilen nur beschrieben habe, aber nicht die Funktion erläutert habe.

Dann leg ich los:

KlickKlack.java TEIL 1 => so heißt dieses Programm

jetzt fängt das eigentliche Programm an:

1.import java.awt.*;
2.import java.applet.*;
3.import java.awt.event.*;

4.public class KlickKlack extends Applet {

5.   Button klickButton = new Button("KlickKlack");
6.   boolean klick = true;

7.    public void init () {
8.        add (klickButton);
9.        klickButton.addMouseListener (new MyMouseAdapt () );
10.  }

11.   class MyMouseAdapt extends MouseAdapter {
12.         public void mouseClicked )MouseEvent e) {
13.                   Graphics g = getGraphics ();
14.                   if (klick)
15.                          g.setColor (Color.red);
16.                   else
17.                          g.setColor(Color.yellow);
18.                   g.fillOval (0,0,getWidth (), getHeight());
19.                   klick = !klick;
20.           }
21.     }
22. }

1 - 3. Hier sind meine Bibliotheken aufgelistet und über import habe ich Zugriff auf die Klassen Applet und MouseAdapter
4. KlickKlack ist der Name der Applet-Klasse, die in KlickKlack.java gespeichert wird und KlickKlack ist die Unterklasse von Applet
5. Druch die new-Anweisung findetr eine Instanzierung statt bzw. es wird das Objekt (Button) erzeugt
6. irgendein Zustand ist wahr, weiß ich nicht genau was mit boolean auf sich hat
7. Die Klasse KlickKlack überlädt die Methode init, init wir beim Start einmalig ausgeführt
8. Es wird ein Button hinzugefügt (glaube ich)
9. hier bin ich überfordert
10. Diese geschw. Klammer gesagt, dass das Unterprogramm init zuende ist
11. Die Klasse MyMouseAdapt wird von der Oberklasse MouseAdapter geerbt
12. normalerweise steht doch public vor class, aber hier ???
13. graphics steht klar für Grafiken, aber welche Seite den Befehl beschreibt oder welche für die Ausgabe zusändig ist, weiß ich nicht.
14 - 17. Nun kommt ja die if und else Schleife. Die Grafik soll die farbe rot bekommen und beim nächsten Mausklick die Farbe gelb übernehmen
18. hier wird klar das die Grafik ein Kreis darstellen soll, welches eine ovale Form hat un die 2 Nullen sagen aus, dass der Kreis keine Weite und Höhe hat

Hoffe das jemand mir die Sachen etwas verständlicher machen kann.
Bin dankbar für jeden Verbesserungsvorschlag !!!  :-)



        
Bezug
Java Programm: Antwort
Status: (Antwort) fertig Status 
Datum: 10:45 So 15.01.2006
Autor: piet.t

Hallo saood,

hier mal meine Anmerkungen:

>  
> 1 - 3. Hier sind meine Bibliotheken aufgelistet und über
> import habe ich Zugriff auf die Klassen Applet und
> MouseAdapter

[ok] Wäre vielleicht noch schön zu sagen, welche der Klassen aus welchem package kommt. Und wozu braucht man java.awt?

>  4. KlickKlack ist der Name der Applet-Klasse, die in
> KlickKlack.java gespeichert wird und KlickKlack ist die
> Unterklasse von Applet

[ok]

>  5. Druch die new-Anweisung findetr eine Instanzierung
> statt bzw. es wird das Objekt (Button) erzeugt

Vielleicht besser: es wird ein Objekt vom Typ Button erzeugt. Dieses Objekt ist im applet unter dem Namen klickButton ansprechbar.

>  6. irgendein Zustand ist wahr, weiß ich nicht genau was
> mit boolean auf sich hat

[notok]Wir definieren eine Instanzvariable namens klick vom Typ boolean (d.h. mit den Werten true oder false) und weisen ihr den Anfangswert "true" zu.

>  7. Die Klasse KlickKlack überlädt die Methode init, init
> wir beim Start einmalig ausgeführt

[ok]

>  8. Es wird ein Button hinzugefügt (glaube ich)

[ok]Genauer: der vorhin erzeugte Button wird dem applet hinzugefügt

>  9. hier bin ich überfordert

Hier wird dem klickButton mitgeteilt, dass er Maus-Ereignisse an die neu erzeugte Instanz der Klasse MyMouseAdapter melden soll.

>  10. Diese geschw. Klammer gesagt, dass das Unterprogramm
> init zuende ist

[ok] aber besser "Methode" statt "Unterprogramm"

>  11. Die Klasse MyMouseAdapt wird von der Oberklasse
> MouseAdapter geerbt

MyMouseAdapter wird nicht geerbt sondern abgeleitet. Sie erbt dann von dieser Klasse alle Methoden und Attribute (soweit sie nicht überschrieben werden)

>  12. normalerweise steht doch public vor class, aber hier
> ???

Die Klasse MyMouseAdapter ist nicht öffentlich, man kann Sie nur innerhalb von KlickKlack verwenden. Das macht auch Sinn, da diese (innere) Klasse ja auf Komponenten des applet zugreift.
public bezieht sich hier darauf, dass auf die Methode mouseClicked() auch von ausserhalb der Klasse MyMouseAdapter zugegriffen werden kann. (Muss so sein, sie wird ja schließlich vom klickButton aus aufgerufen!)

>  13. graphics steht klar für Grafiken, aber welche Seite
> den Befehl beschreibt oder welche für die Ausgabe zusändig
> ist, weiß ich nicht.

Unter Graphics stelle ich mir immer eine Leinwand vor, auf der ich dann malen kann (muss aber nicht stimmen, ich bin nicht wirklich der grosse awt-Kenner). Graphics-Objekte haben keinen öffentlichen Konstruktor, sondern müssen über die getGraphics-Methode einer awt-Komponente von dieser angefordert werden. Hier holen wir uns die "Leinwand" des applet-Objekts.

>  14 - 17. Nun kommt ja die if und else Schleife. Die Grafik
> soll die farbe rot bekommen und beim nächsten Mausklick die
> Farbe gelb übernehmen

Schleife? Welche Schleife? Da steht doch nur eine Abfrage!
Abhängig davon, ob klick gesetzt ist wird die Grafik rot oder gelb. Weil klick am Anfang true ist setzt der erste Mausklick die Farbe rot, danach wird immer zwischen rot und gelb umgeschalten (siehe auch unter 19).

>  18. hier wird klar das die Grafik ein Kreis darstellen
> soll, welches eine ovale Form hat un die 2 Nullen sagen
> aus, dass der Kreis keine Weite und Höhe hat
>  

[notok] Wir zeichnen ein gefülltes Oval. Die zwei Nullen bezeichnen die Position der oberen linken Ecke (in Bezug auf das applet), Breite und Höhe werden vom applet übernommen (über getWidth und getHeight).

> Hoffe das jemand mir die Sachen etwas verständlicher machen
> kann.
>  Bin dankbar für jeden Verbesserungsvorschlag !!!  :-)
>  
>  

Dann fehlt da noch 19.: klick wird von true auf false gesetzt oder umgekehrt, so dass beim nächsten Klick die andere Farbe erscheint.

Ich hoffe das hilft!

Gruß

piet

Bezug
                
Bezug
Java Programm: Danke
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 13:53 So 15.01.2006
Autor: saoody

Jo, danke dir !!!

Ist auf jedenfall verständlicher geworden ;-)

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Java"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorhilfe.de