www.matheraum.de
Das Matheforum.
Das Matheforum des MatheRaum.

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Mathe
  Status Schulmathe
    Status Primarstufe
    Status Mathe Klassen 5-7
    Status Mathe Klassen 8-10
    Status Oberstufenmathe
    Status Mathe-Wettbewerbe
    Status Sonstiges
  Status Hochschulmathe
    Status Uni-Analysis
    Status Uni-Lin. Algebra
    Status Algebra+Zahlentheo.
    Status Diskrete Mathematik
    Status Fachdidaktik
    Status Finanz+Versicherung
    Status Logik+Mengenlehre
    Status Numerik
    Status Uni-Stochastik
    Status Topologie+Geometrie
    Status Uni-Sonstiges
  Status Mathe-Vorkurse
    Status Organisatorisches
    Status Schule
    Status Universität
  Status Mathe-Software
    Status Derive
    Status DynaGeo
    Status FunkyPlot
    Status GeoGebra
    Status LaTeX
    Status Maple
    Status MathCad
    Status Mathematica
    Status Matlab
    Status Maxima
    Status MuPad
    Status Taschenrechner

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
Mathe-Seiten:Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenSoftwaretechnik und ProgrammierungJava
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Philosophie • Religion • Kunst • Musik • Sport • Pädagogik
Forum "Softwaretechnik und Programmierung" - Java
Java < Softwaretechnik+Pro < Praktische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Softwaretechnik und Programmierung"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Java: Klasse Graphics
Status: (Frage) beantwortet Status 
Datum: 18:52 So 20.07.2008
Autor: SusaSch

Hallo
Ich würde germe den Aufbau der Klasse Graphics wissen ( welche Attribute hat sie)?
Die Klasse hat ja eine Menge set Methoden(seColor...), aber auf Webseiten wo die Klasse vorgestellt wird ist nie die rede von Attributen...
Hat sie etwa keine?


LG Susi

        
Bezug
Java: Antwort
Status: (Antwort) fertig Status 
Datum: 20:37 So 20.07.2008
Autor: bazzzty

Ich nehme an, Du beziehst Dich auf java.awt.Graphics.

Die Klasse könnte Attribute haben, aber das ist der Sinn von Kapselung: Du siehst, wie Du ein Objekt manipulieren kannst, aber nicht, wie sich das Objekt intern strukturiert.

Darüber hinaus ist diese Klasse im speziellen abstrakt, d.h. sie kann nicht instantiiert werden und definiert nur ein Verhalten, das alle Subklassen einhalten müssen.

Bezug
                
Bezug
Java: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 20:46 So 20.07.2008
Autor: SusaSch

Hey
ja genau die klasse meine ich. Wenn ich jetzt z.b. in einen applet das Graphics Object übergebe und dann dann (weil ich die Schriftart ändern will) die Methode setFont aufrufe, was passiert dann?
Ich hätte gedacht, das einem Attribut im GraficObject, dem vorher eine andere Schrift zugewiesen war jetzt die zugewiesen wird, die ich ihm mit dem Fondbject übergebe....


Lg Susi

Bezug
                        
Bezug
Java: Antwort
Status: (Antwort) fertig Status 
Datum: 20:56 So 20.07.2008
Autor: Somebody


> Hey
> ja genau die klasse meine ich. Wenn ich jetzt z.b. in einen
> applet das Graphics Object übergebe und dann dann (weil ich
> die Schriftart ändern will) die Methode setFont aufrufe,
> was passiert dann?
>  Ich hätte gedacht, das einem Attribut im GraficObject, dem
> vorher eine andere Schrift zugewiesen war jetzt die
> zugewiesen wird, die ich ihm mit dem Fondbject übergebe....

Das Graphics Objekt ist nur ein Kontext für Grafikoperationen. Erst wenn Du mit diesem Graphics Objekt etwas schreibst, wird die Schrift mit den neuen Font geschrieben. Ändern des Fonts hat keinerlei Wirkung auf vorher mit diesem Graphics Objekt geschriebene Texte.

Bezug
                                
Bezug
Java: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 21:01 So 20.07.2008
Autor: SusaSch

Hallo
Danke für deine Antwort, aber das war gar nicht die frage ;).

Meine frage war wo , wenn ich die setFont methode aufrufe das FontObjekt das ich übergebe hinkommt, wenn die Graphics Klasse keine Attribute hat ( bzw ich keine finde ;))...

Außerdem hab ich noch eine Frage:

Wenn die Graphics klasse abstract ist, also von ihr keine Instanzen erzeugt werden können, was wird dann zum Teufel der paint-Methode übergeben :(....?


LG Susi

Bezug
                                        
Bezug
Java: Antwort
Status: (Antwort) fertig Status 
Datum: 21:16 So 20.07.2008
Autor: Somebody


> Hallo
> Danke für deine Antwort, aber das war gar nicht die frage
> ;).
>  
> Meine frage war wo , wenn ich die setFont methode aufrufe
> das FontObjekt das ich übergebe hinkommt, wenn die Graphics
> Klasse keine Attribute hat ( bzw ich keine finde ;))...

Du brauchst nicht zu wissen, wo das Graphics Objekt die Information speichert. In der Regel hast Du jeweils Paare von setXXX() und getXXX() Methoden. Diese erlauben Dir, das betreffende "Attribut" zu schreiben und zu lesen: mehr brauchst Du nicht. Wenn Du mehr Zugriff hättest, würdest Du potentiell nur Unheil stiften, indem Du die interne Struktur des Graphics Objektes modifizieren könntest, ohne dass das Graphics Objekt selbst "merkt", dass Du was geändert hast. Wenn Du aber setXXX() rufen musst, um das "Attribut" XXX zu ändern, kann das Graphics Objekt eventuell mit dieser Änderung des Attributes verbundene weitere nötige Zustandsänderungen seiner Gesamtstruktur vornehmen.

>  
> Außerdem hab ich noch eine Frage:
>  
> Wenn die Graphics klasse abstract ist, also von ihr keine
> Instanzen erzeugt werden können, was wird dann zum Teufel
> der paint-Methode übergeben :(....?

Eine Instanz einer von Graphics abgeleiteten Klasse. Diese abgeleitete Klasse brauchst Du nicht zu kennen (das ist ja die Idee bei der Abstraktion). Aber diese Instanz wird vom System erzeugt und zur Verfügung gestellt.

Bezug
                                                
Bezug
Java: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 21:31 So 20.07.2008
Autor: SusaSch

hey
Also liege ich aber generell richtig, dass das Graphics Object die übergebene Referenz des Fondobjects in ein Attribut speichert(Auch wenn ich nicht weiß in welches...)
Es hat also   Attribute...
Ich willimmer alles wissen ;), auch wenn ich es eigentlich nicht muss...


lg Susi

Bezug
                                                        
Bezug
Java: Antwort
Status: (Antwort) fertig Status 
Datum: 21:34 So 20.07.2008
Autor: Somebody


> hey
>  Also liege ich aber generell richtig, dass das Graphics
> Object die übergebene Referenz des Fondobjects in ein
> Attribut speichert(Auch wenn ich nicht weiß in welches...)
>  Es hat also   Attribute...
>  Ich willimmer alles wissen ;), auch wenn ich es eigentlich
> nicht muss...

Also formulieren wir es besser diplomatisch: das Graphics Objekt muss sich natürlich merken, welcher Font beim letzten setFont() angegeben worden ist. Wie und wo genau, das wissen nur die Java-Götter bzw. die Implementation der betreffenden von Graphics abgeleiteten Klasse, von der Deiner paint() Methode eine Instanz übergeben worden ist.

Bezug
                                                                
Bezug
Java: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 21:38 So 20.07.2008
Autor: SusaSch

Hey
Oki ich geb mich geschlagen und nehm das so hin ...:)
Vielen Dankf für deine Hilfe..


LG Susi

Bezug
                                                                        
Bezug
Java: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 21:44 So 20.07.2008
Autor: Somebody


> Hey
>  Oki ich geb mich geschlagen und nehm das so hin ...:)
>  Vielen Dankf für deine Hilfe..

Diese Art von "Information Hiding", bei dem Dir also genaue Detailkenntnis der Implementation der fraglichen Klasse vorenthalten wird, ist eben eine nützliche Methode grosse Softwaresysteme weniger änderungsempfindlich zu machen. Wenn Dein Programm von der aktuellen Implementation abhängig wäre, müsste Dein Code nach einer Änderung der Implementation der fraglichen Klasse mit erhöhter Wahrscheinlichkeit auch geändert werden.
Bleibt aber bei der Änderung der Implementation der von Graphics abgeleiteten Klasse das "Interface" (= die Definition der "abstrakten Klasse" Graphics) dieselbe, muss Dein Code garantiert nicht geändert werden.

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Softwaretechnik und Programmierung"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.matheforum.net
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]