WinFuture-Forum.de: Frage Zu Get Und Set Funktionen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Frage Zu Get Und Set Funktionen wann machen sie sinn?


#1 Mitglied ist offline   XDestroy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.906
  • Beigetreten: 08. August 02
  • Reputation: 0

geschrieben 23. Januar 2007 - 21:04

hallo zusammen!!

ich arbeite gerade an einer kleinen aufgabe für die uni.
wir sollen möglichst objektorientiert arbeiten. die sache ist die,
das wir hier im prinzip nur eine klasse haben, und von dieser 2 ableitungen.
jetzt habe ich welche gesehen, die in der vater klasse eine variable private gesetzt haben
und dafür get und set funktionen erstellt haben. auf die variablen greifen sie also von der tochter
klasse aus so zu, in dem sie die get und set funktionen in der vater klasse aufrufen.

meine frage: sinnvoll? ich hab einfach protected genommen....

anmerkung: wir sollen möglichst objektorientiert coden. soweit es geht.


gruß
xdestroy
0

Anzeige



#2 Mitglied ist offline   Graumagier 

  • Gruppe: aktive Mitglieder
  • Beiträge: 8.747
  • Beigetreten: 01. März 04
  • Reputation: 1
  • Geschlecht:Männlich
  • Wohnort:Graz, Österreich

geschrieben 23. Januar 2007 - 21:18

XDestroy sagte:

meine frage: sinnvoll?

Klar. So kann man den Zugriff nach Wunsch regulieren und überprüfen. Wenn man jederzeit direkt auf die Variablen zugreifen kann hat man diese Möglichkeit nicht. Mal abgesehen davon dass es für evt. Nachfolgeprogrammierer so einfacher wird, mit deinen Klassen zu arbeiten, wenn sie sich nicht um den direkten Variablenzugriff scheren müssen.

Dieser Beitrag wurde von Graumagier bearbeitet: 23. Januar 2007 - 21:20

"If you make something idiot proof, someone will invent a better idiot." - Marvin

For Emails always use OpenPGP. My KeyID: 0xA1E011A4
0

#3 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.505
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 23. Januar 2007 - 22:23

Nicht nur regulieren und prüfen, sondern das ganze auch aktiv als Event verarbeiten.

Z.B. wenn man eine Klasse für ein graphische Darstellung hat, dann soll die setter-Funktiond dafür sorgen, daß die Darstellung aktualisiert wird.
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#4 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.701
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 23. Januar 2007 - 22:33

Dazu weiterer Lesestoff: http://de.wikipedia.org/wiki/Datenkapselun...ogrammierung%29
0

#5 Mitglied ist offline   XDestroy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.906
  • Beigetreten: 08. August 02
  • Reputation: 0

geschrieben 24. Januar 2007 - 18:34

ist es unsauber in der abstrakten klasse get und set funktionen auszuschreiben für die dort vorhandenen variablen?

edit: genereller: ist es überhaupt ok funktionen in der abstrakten auszuschreiben?

Dieser Beitrag wurde von XDestroy bearbeitet: 24. Januar 2007 - 18:44

0

#6 Mitglied ist offline   Graumagier 

  • Gruppe: aktive Mitglieder
  • Beiträge: 8.747
  • Beigetreten: 01. März 04
  • Reputation: 1
  • Geschlecht:Männlich
  • Wohnort:Graz, Österreich

geschrieben 24. Januar 2007 - 18:43

XDestroy sagte:

ist es unsauber in der abstrakten klasse get und set funktionen auszuschreiben für die dort vorhandenen variablen?

Auszuschreiben? Meinst du nicht eher "auszulassen"?
"If you make something idiot proof, someone will invent a better idiot." - Marvin

For Emails always use OpenPGP. My KeyID: 0xA1E011A4
0

#7 Mitglied ist offline   XDestroy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.906
  • Beigetreten: 08. August 02
  • Reputation: 0

geschrieben 24. Januar 2007 - 18:50

naja es ist so das ich ne funktion habe, die in alle drei tochter klassen muss und dort auch noch identisch wäre...
da ist meine idee diese gleich in die abstrakte zu schreiben. problem ist halt, dass ich irgendwo meine mal gehört zu haben dass man in einer abstrakten klasse eine funktionen ausschreibt sondern nur deklariert. doch jetzt gerade beim schreiben fällt mir auf dass es das bei java gar nicht gibt das deklarieren von funktionen Oo

hmm. es ist so, ich habe eine abstrakte klasse, und drei töchter. die sache ist die: zwei töchter sind identisch mit der einen und haben nur noch zusätzliche dinge. ich überlege daher die eine tochter zur mutter zu machen und damit folgende hierarchie hätte:

abstrakte -> mutter -> 2 töchter

dann wird nur die abstrakte finde ich sinnlos, denn dann könnte ich ja auch alles aus der abstrakten in die mutter packen....
0

#8 Mitglied ist offline   Graumagier 

  • Gruppe: aktive Mitglieder
  • Beiträge: 8.747
  • Beigetreten: 01. März 04
  • Reputation: 1
  • Geschlecht:Männlich
  • Wohnort:Graz, Österreich

geschrieben 24. Januar 2007 - 20:31

XDestroy sagte:

problem ist halt, dass ich irgendwo meine mal gehört zu haben dass man in einer abstrakten klasse eine funktionen ausschreibt sondern nur deklariert.

Prinzipiell richtig.

XDestroy sagte:

doch jetzt gerade beim schreiben fällt mir auf dass es das bei java gar nicht gibt das deklarieren von funktionen Oo

Achso?

public abstract class AbstractClass {

  public void abstract a(); // Deklaration

}

public class NormalClass extends AbstractClass {

  public void a() { }  // Definition

}


XDestroy sagte:

dann wird nur die abstrakte finde ich sinnlos, denn dann könnte ich ja auch alles aus der abstrakten in die mutter packen....

Klar, kannst du machen. Kommt eben auf die Anforderungen an. Meistens brauchst du gar keine abstrakten Klassen.
"If you make something idiot proof, someone will invent a better idiot." - Marvin

For Emails always use OpenPGP. My KeyID: 0xA1E011A4
0

#9 Mitglied ist offline   XDestroy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.906
  • Beigetreten: 08. August 02
  • Reputation: 0

geschrieben 25. Januar 2007 - 21:08

alles klar ich hab die abstrakte jetzt weg gemacht.

mal ne andere kurze letzte absclhießende frage=): wenn ich double werte einlese und jemand tippt ein komma statt einem punkt ein. kann ich das irgendwie abfangen und umwandeln?

danke!


EDIT: sorry für unnötiges stören und posten^^ google hilft... :o

hat sich also erledigt die sache hiermit!!

danke!!
gruß
xdestroy

Dieser Beitrag wurde von XDestroy bearbeitet: 25. Januar 2007 - 21:33

0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0