[Progra] Übung 6- Aufgabe 2

[Progra] Programmierung
[DSAL] Datenstrukturen und Algorithmen
[SWT] Softwaretechnik
[DB] Datenbanken und Informationssysteme

Übung 6- Aufgabe 2

Beitragvon aRo » 28.11.07 18:45

Hallo!

Ich habe noch zwei allgemeine Fragen:

Wenn ich es richtig verstanden habe, setzt man "private", damit manche Eigenschaften eines Objekts nicht von außen zugänglich sind. Dadurch muss man Selektoren schreiben, damit man dennoch an die Informationen kommt.
Sinn des Ganzen: Datenabstraktion, der Benutzer braucht nicht genau zu wissen, wie etwas verwirklicht wurde. Zweitens muss so nicht der gesamte Quelltext geändert werden, wenn an der Klasse etwas geändert wird.

Richtig?

Also:
1. Die selbstgeschriebenen Methoden der Klasse dürfen aber weiterhin ganz normal ohne Selektoren auf die Attribute der Klasse zugreifen?
2. Die lokalen Variablen der Methoden, macht es da auch Sinn die auf private zu setzen?

Danke.
Zuletzt geändert von aRo am 28.11.07 20:38, insgesamt 1-mal geändert.
aRo
 
Beiträge: 311
Registriert: 23.10.07 01:28
Anwendungsfach: Medizin

Re: Übung 6- Aufgabe 2

Beitragvon mirko » 28.11.07 19:40

zunächst mal solltest du vlt ein "[Progra]"-tag setzen, wenn du einen entsprechenden thread aufmachst...

aRo hat geschrieben:Hallo!

Ich habe noch zwei allgemeine Fragen:

Wenn ich es richtig verstanden habe, setzt man "private", damit manche Eigenschaften eines Objekts nicht von außen zugänglich sind. Dadurch muss man Selektoren schreiben, damit man dennoch an die Informationen kommt.
Sinn des Ganzen: Datenabstraktion, der Benutzer braucht nicht genau zu wissen, wie etwas verwirklicht wurde. Zweitens muss so nicht der gesamte Quelltext geändert werden, wenn an der Klasse etwas geändert wird.

Richtig?


jap

Also:
1. Die selbstgeschriebenen Methoden der Klasse dürfen aber weiterhin ganz normal ohne Selektoren auf die Attribute der Klasse zugreifen?
2. Die lokalen Variablen der Methoden, macht es da auch Sinn die auf private zu setzen?

Danke.


1. jap
2. nein - lokale variablen kennen keine zugriffsattribute - ohne es getestet zu haben würde ich behaupten, dass der compiler meckert, wenn du lokalen variablen entsprechende attribute zuweist.
mirko
 
Beiträge: 1032
Registriert: 22.10.06 18:33
Studiert seit: WS 12/13

Beitragvon Coolcat » 29.11.07 12:41

1. Die selbstgeschriebenen Methoden der Klasse dürfen aber weiterhin ganz normal ohne Selektoren auf die Attribute der Klasse zugreifen?

Ja, natürlich. Insbesondere die Selektoren selbst sind ja auch nur Methoden der Klasse ;)

2. Die lokalen Variablen der Methoden, macht es da auch Sinn die auf private zu setzen?

Das geht nicht und macht auch keinen Sinn. Auf lokale Variablen kann man nur lokal (=innerhalb der Methode) zugreifen, deswegen heißen die so.
My software never has bugs. It just develops random features.
Benutzeravatar
Coolcat
Promoter
 
Beiträge: 2574
Registriert: 28.11.05 21:26
Wohnort: Kohlscheid / Düsseldorf
Studiengang: Informatik (Dipl.)
Studiert seit: fertig
Anwendungsfach: BWL

Beitragvon thana » 29.11.07 12:47

in dieser vorlesung werden getter und setter also selektoren genannt?
thana
 
Beiträge: 264
Registriert: 18.10.07 17:01

Beitragvon Coolcat » 29.11.07 12:51

Nun, ich bin nicht in der Vorlesung, aber die Dinger heißen so....ja.
My software never has bugs. It just develops random features.
Benutzeravatar
Coolcat
Promoter
 
Beiträge: 2574
Registriert: 28.11.05 21:26
Wohnort: Kohlscheid / Düsseldorf
Studiengang: Informatik (Dipl.)
Studiert seit: fertig
Anwendungsfach: BWL

Beitragvon aRo » 29.11.07 16:19

ok, danke.
und ja, setter und getter werden selektoren bei uns genannt.
aRo
 
Beiträge: 311
Registriert: 23.10.07 01:28
Anwendungsfach: Medizin

Beitragvon D3legator » 01.12.07 18:20

Frage: in der Aufgabenstellung steht, dass man den HTML teil nicht ausdrucken muss. die .java Datei soll man aber schon ausdrucken, oder?
Benutzeravatar
D3legator
 
Beiträge: 23
Registriert: 11.11.07 13:29
Wohnort: Aachen

Beitragvon Coolcat » 01.12.07 18:21

die .java Datei soll man aber schon ausdrucken, oder?

Ja, natürlich.
My software never has bugs. It just develops random features.
Benutzeravatar
Coolcat
Promoter
 
Beiträge: 2574
Registriert: 28.11.05 21:26
Wohnort: Kohlscheid / Düsseldorf
Studiengang: Informatik (Dipl.)
Studiert seit: fertig
Anwendungsfach: BWL

Beitragvon LeeJan » 02.12.07 10:43

Hi @ all,

ich hätte da mal wieder eine Verständnisfrage zu den Aufgabenstellungen, bevor ich da was falsches implementiere:

Aufgabenteil c.)
public static Vektor zero();

In der Aufgabenstellung steht, das diese Methode einen "neuen"Vektor zurückgibt deren Komponenten auf 0.0 steht.
Muss ich da jetzt durch diese Methode ein neues Objekt erstellen, wobei die Komponenten auf 0.0 stehen oder das Objekt das diese Methode nutzt, deren Werte auch 0.0 ändern ?

Schöne Grüße
pajemaisch par rusky?
LeeJan
 
Beiträge: 73
Registriert: 09.12.06 01:58
Wohnort: Aachen

Beitragvon MartinR » 02.12.07 13:06

Die Methode ist static - also fällt das mit dem "das Objekt, das sie benutzt auf 0 setzen" weg.
Dann sollte es klar sein, oder? Vor allem mit einem Vektor als Rückgabeobjekt.
bird >= word
MartinR
 
Beiträge: 149
Registriert: 19.09.05 18:13
Wohnort: Aachen, halt

Beitragvon scttytrmn » 02.12.07 23:31

check hier grad was nicht


"Die Methode crossProduct(Vektor v) soll das Kreuzprodukt des aktuellen
Vektors mit dem Vektor v berechnen."

und was soll damit geschehen wenns berechnet wurde? :E
Bild
Benutzeravatar
scttytrmn
 
Beiträge: 173
Registriert: 01.11.07 23:41
Wohnort: AC :x

Beitragvon thana » 03.12.07 00:22

Diejenigen Methoden, die den Ruckgabetyp void haben, sollen als Seiteneffekt das Objekt entsprechend andern, fur das sie aufgerufen werden.
thana
 
Beiträge: 264
Registriert: 18.10.07 17:01

Beitragvon LeeJan » 03.12.07 00:23

Ja,du siehst schon richtig.
Die Methode berechnet nur das Kreuzprodukt und gib nix zurück.
Aber du musst das so verstehen das die Werte des aktuellen Vektors verändert werden, durch das Kreuzprodukt mit einem anderem Vektor v.
pajemaisch par rusky?
LeeJan
 
Beiträge: 73
Registriert: 09.12.06 01:58
Wohnort: Aachen

Beitragvon LeeJan » 03.12.07 00:28

Kann mir vielleicht jemand einen Tip geben, wie ich schaue ob beide Objekte auf null sind?

Danke! :D
pajemaisch par rusky?
LeeJan
 
Beiträge: 73
Registriert: 09.12.06 01:58
Wohnort: Aachen

Beitragvon thana » 03.12.07 00:55

generell mit
if ( objekt == null )
...

aber in der aufgabe steht ja überall schön bei, dass der Benutzer der Klasse dafür Sorge tragen soll, dass nicht null in die Methoden gestopft wird...
thana
 
Beiträge: 264
Registriert: 18.10.07 17:01

Nächste

Zurück zu Praktische Informatik