Dies ist eine statische Kopie unseres alten Forums. Es sind keine Interaktionen möglich.
This is a static copy of our old forum. Interactions are not possible.

hamena314

Zerschmetterling

  • "hamena314" is male
  • "hamena314" started this thread

Posts: 2,032

Date of registration: Aug 31st 2003

Location: Hannover

Occupation: Informatikstudent (d'uh)

1

Tuesday, May 2nd 2006, 9:48pm

Java Übung 4

Altes Problem: Wegen zeitlicher Überschneidung bei mir --> bis wohin ist die Vorlesung gekommen? :-.

Das Übungsblatt sieht zumindest mal lustig aus, auch wenn ich das mit der "Eleganz von Getter-Methoden" nicht so ganz verstehe, aber naja, mal sehen wie's wird. :)

HAVE PHUN!
Nicht der Wind bestimmt die Richtung, sondern das Segel! (Lao Xiang, China)

Markus

the one and only Unterstrich!

Posts: 2,571

Date of registration: Oct 9th 2003

2

Wednesday, May 3rd 2006, 1:17am

Getter- und Setter Methoden sind m.E. nach in der Informatik Pflicht und ich kann nur empfehlen, das entsprechend nachzuarbeiten! (Nicht für Java, sondern für deinen Job ;))
Charmant sein? Hab ich längst aufgegeben. Glaubt mir doch eh keiner...

sommla

Junior Schreiberling

  • "sommla" is male

Posts: 169

Date of registration: Oct 27th 2005

3

Wednesday, May 3rd 2006, 8:23am

Morgen,

habe gehört, dass 4.8.7 erreicht wurde im Skript.

Viel Spaß! ;)
Lieber ein Haus im Grünen als 'nen Grünen im Haus.

Warui

Turner, Serveradmin & Workaholic

  • "Warui" is male

Posts: 717

Date of registration: Apr 25th 2006

Location: Südstadt

Occupation: (iter (B.Sc. Inf, 8)) \n (be-a-slave ("SRA", "Bachelor Thesis")) \n (be-a-programmer-slave ("Freelancer", "Programming"))

4

Wednesday, May 3rd 2006, 9:12am

@hamena:
Die Getter- und Setter-Methoden in Java werden erst in 4.11.6 und 4.11.7 behandelt.

Irgendwie sind Übung und Vorlesung so gar nicht kohärent ... lernst man wenigstens was in der Übung was ^.^
(Und ja, ich kann mir vorstellen, wie das für nen Programmierneuling sein muss ... aber für den ist das Skript auch ziemlich mies ... ich bin halt nur n Tick egoistisch und bezieh das auf mich ;) )

Mata ne
Warui

(Nachtrag: Hab die Fußnote auf der ersten Seite übersehen)
Erwachsenwerden? Ich mach ja viel Scheiß mit, aber nicht jeden!

This post has been edited 2 times, last edit by "Warui" (May 3rd 2006, 12:48pm)


Dot

Senior Schreiberling

Posts: 618

Date of registration: Feb 3rd 2003

Location: Ex-Europameisterland

Occupation: 4TheScience

5

Wednesday, May 3rd 2006, 7:46pm

Ich verstehe da eine Sache nicht so ganz.
Wir sollen ja z.b. bei der Klasse Blume die Variable int zustand definieren.
Und weiter steht.wir sollen die Konstanten (final) waechst,blueht und gefressen definieren.
Das mit den Konstanten versteh ich in dem Fall nicht,wie ist denn das gemeint? Sollen das final Variablen werden oder wie oder was?
C:\reality.sys has errors - Reboot the universe? (Y/N)

Real programmers don't comment their code.
It was hard to write, it should be hard to understand

  • "Joachim" is male

Posts: 2,863

Date of registration: Dec 11th 2001

Location: Hämelerwald

Occupation: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

6

Wednesday, May 3rd 2006, 7:53pm

Quoted

Original von Dot
Wir sollen ja z.b. bei der Klasse Blume die Variable int zustand definieren.
Und weiter steht.wir sollen die Konstanten (final) waechst,blueht und gefressen definieren.
Das mit den Konstanten versteh ich in dem Fall nicht,wie ist denn das gemeint? Sollen das final Variablen werden oder wie oder was?
http://www.joconner.com/javai18n/articles/MagicNumbers.html erklärt das ganz gut. Stichwort "magic numbers".
The purpose of computing is insight, not numbers.
Richard Hamming, 1962

Dot

Senior Schreiberling

Posts: 618

Date of registration: Feb 3rd 2003

Location: Ex-Europameisterland

Occupation: 4TheScience

7

Wednesday, May 3rd 2006, 8:04pm

Wie gesagt,ich weiss was eine final Variable ist, aber ich verstehe nicht ganz den Sinn in der Aufgabe. Ich würde es halt ohne machen und habe keine Ahnung wie das dort gemeint ist.
C:\reality.sys has errors - Reboot the universe? (Y/N)

Real programmers don't comment their code.
It was hard to write, it should be hard to understand

Warui

Turner, Serveradmin & Workaholic

  • "Warui" is male

Posts: 717

Date of registration: Apr 25th 2006

Location: Südstadt

Occupation: (iter (B.Sc. Inf, 8)) \n (be-a-slave ("SRA", "Bachelor Thesis")) \n (be-a-programmer-slave ("Freelancer", "Programming"))

8

Wednesday, May 3rd 2006, 8:04pm

so ist es wohl zumindest gedacht, allerdings lässt mich der Compiler die Konstante dann auch nicht mehr verändern.
Initialisiere ich sie gar nicht erst und ändere ich sie nicht, beschwert er sich zu recht, dass sie nicht initialisiert wird.
Initialisiere ich sie nicht, will sie aber (einmal) im Programmverlauf verändern, sagt er mir, ich könne keine als final deklarierte Variable verändern ...

Ich hab schon ne Mail an den Übungsleiter deswegen geschrieben ... sobald ich eine Antwort habe, steht sie danach hier :)

Mata ne
Warui
Erwachsenwerden? Ich mach ja viel Scheiß mit, aber nicht jeden!

Dot

Senior Schreiberling

Posts: 618

Date of registration: Feb 3rd 2003

Location: Ex-Europameisterland

Occupation: 4TheScience

9

Wednesday, May 3rd 2006, 8:13pm

Ach übrigens kommen Konstanten erst bei 4.13.4 dran.wir sind stehengeblieben bei 4.8.8
C:\reality.sys has errors - Reboot the universe? (Y/N)

Real programmers don't comment their code.
It was hard to write, it should be hard to understand

Markus

the one and only Unterstrich!

Posts: 2,571

Date of registration: Oct 9th 2003

10

Wednesday, May 3rd 2006, 11:47pm

Quoted

Original von Warui
[...]allerdings lässt mich der Compiler die Konstante dann auch nicht mehr verändern.
[...]
Initialisiere ich sie nicht, will sie aber (einmal) im Programmverlauf verändern, sagt er mir, ich könne keine als final deklarierte Variable verändern ...


Ähm..... final deklariert die Variable als Konstante. Der Sinn dahinter ist, dem Compiler zu sagen, dass die Variable eben NICHT verändert wird.
Die Lichtgeschwindigkeit zB ist ja auch eine Konstante, die kann man nicht mal so eben verändern, auch nicht nur einmal. ;):D
Charmant sein? Hab ich längst aufgegeben. Glaubt mir doch eh keiner...

hamena314

Zerschmetterling

  • "hamena314" is male
  • "hamena314" started this thread

Posts: 2,032

Date of registration: Aug 31st 2003

Location: Hannover

Occupation: Informatikstudent (d'uh)

11

Thursday, May 4th 2006, 12:24am

<Offtopic>

Quoted

Original von Markus
(...)Die Lichtgeschwindigkeit zB ist ja auch eine Konstante(...)


[Quantenphysik]
Lüger. Du Lüger! LÜÜÜÜÜÜÜGER!!! ;(
[/Quantenphysik]

HAVE PHUN!

P.S.: SCNR :D

</Offtopic>
Nicht der Wind bestimmt die Richtung, sondern das Segel! (Lao Xiang, China)

This post has been edited 1 times, last edit by "hamena314" (May 4th 2006, 12:25am)


Hogi

Trainee

  • "Hogi" is male

Posts: 69

Date of registration: Oct 8th 2003

Location: Rinteln

12

Thursday, May 4th 2006, 12:09pm

zu den final variablen: Blume soll ein Feld namens Zustand haben, dieses soll int sein, das heißt es gibt nur die zustände 0, 1, 2, -4, -8, 5, usw... eine zahl sagt aber irgendwie nicht so viel aus, was soll denn der zustand 6 bedeuten?

an der stelle kommen die konstanten ins spiel, dabei definiert man sich sich konstanten, die dem ganzen einen sinn geben, zum beispiel ist WAECHST dann 1, STIRBT dann 6 und so weiter (im grunde ist das beliebig). jetzt kann man den int bei zustand über den variablennamen mit sinn füllen, denn der zustand ist dann gleich Blume.WAECHST, Blume.STIRBT usw.. das kann man dann auch später bei abfragen ganz nett machen: if (meineBlume.zustand == Blume.VERTROCKNET) { meineBlume.gießen(); } liest sich wesentlich besser (und ist weniger fehleranfällig) als: if (meineBlume.zustand == 4) { ... }

seit java 5 gibt es dafür ein schönes konstrukt namens Enum, das sich noch besser für so etwas eignet und bestimmte probleme obiger technik löst. das sollt ihr aber in der übung noch nicht benutzen....

Dot

Senior Schreiberling

Posts: 618

Date of registration: Feb 3rd 2003

Location: Ex-Europameisterland

Occupation: 4TheScience

13

Thursday, May 4th 2006, 7:42pm

Die Mauss soll ja mit dem Fressen den Zustand der Blumen verändern,das Problem ist nun,wie greif ich von der Mausklasse auf die Blumen zu?Ich habe ja in der Mausklasse die Blumenklassen nicht instanziert,sondern in der Frühlingsklasse.
C:\reality.sys has errors - Reboot the universe? (Y/N)

Real programmers don't comment their code.
It was hard to write, it should be hard to understand

Posts: 60

Date of registration: Oct 10th 2005

14

Thursday, May 4th 2006, 8:02pm

Kannst das ja über das Hauptprogramm erledigen.

Wäre zumindest mein erster Gedanke.

Warui

Turner, Serveradmin & Workaholic

  • "Warui" is male

Posts: 717

Date of registration: Apr 25th 2006

Location: Südstadt

Occupation: (iter (B.Sc. Inf, 8)) \n (be-a-slave ("SRA", "Bachelor Thesis")) \n (be-a-programmer-slave ("Freelancer", "Programming"))

15

Thursday, May 4th 2006, 8:17pm

Quoted

Original von Dot
Die Mauss soll ja mit dem Fressen den Zustand der Blumen verändern,das Problem ist nun,wie greif ich von der Mausklasse auf die Blumen zu?Ich habe ja in der Mausklasse die Blumenklassen nicht instanziert,sondern in der Frühlingsklasse.


Am einfachsten aus der Klasse Frühling :)
Deshalb sollen die Zustände (oder die Methode getZustand() ) ja public sein ...

Source code

1
2
3
if (meineMaus.getZustand() == meineMaus.FRISST) {
  // such dir eine Blume raus und informier sie darüber, dass die Maus stärker war als sie
}


Mata ne
Warui
Erwachsenwerden? Ich mach ja viel Scheiß mit, aber nicht jeden!

This post has been edited 1 times, last edit by "Warui" (May 4th 2006, 8:17pm)


ruffy85

Trainee

  • "ruffy85" is male

Posts: 103

Date of registration: Oct 12th 2005

Location: Hildesheim

Occupation: B.Sc. Informatik / 1. Semester

16

Saturday, May 6th 2006, 3:35pm

Quoted

Original von Hogi
seit java 5 gibt es dafür ein schönes konstrukt namens Enum, das sich noch besser für so etwas eignet und bestimmte probleme obiger technik löst. das sollt ihr aber in der übung noch nicht benutzen....


Dürfen wir also analog zur Schme Übung nur die Befehle benutzen, die bis dato in der Vorlesung drank kamen? 8o Das fände ich nicht okay. Klar, die Aufgabe wird auch damit lösbar sein, aber eben nicht so elegant. Leider gibt es ja auch keine eindeutigen Hinwiese auf den Übungsblättern, bzw. im Internet.

Hades

Praktikant

  • "Hades" is male

Posts: 8

Date of registration: Oct 23rd 2005

17

Saturday, May 6th 2006, 5:15pm

Irgendwie funktioniert das aber nicht. Wenn wir nur Befehle aus den Vorlesungen benutzen dürften hätte ich schon Aufgabe 2 nicht lösen können, schließlich waren meines wissen, bis dahin keine Schleifen in der Vorlesung dran.
Ich würde das einfach so machen, wie ich das hinbekomme, egal was in der Vorlesung dran war. Zur Not muss man sich halt bei seinem Übungsleiter rechtfertigen.
Rechtschreibfehler sind gratis und unterliegen keinem Copyright

BLUESCREEN

Junior Schreiberling

  • "BLUESCREEN" is male

Posts: 244

Date of registration: Oct 11th 2005

18

Saturday, May 6th 2006, 6:05pm

Benutzt doch einfach die Befehle, mit denen ihr das hinkriegt...

So lange ihr euch an die Aufgabenstellung haltet wird das ok sein.

Es steht nirgends, dass ihr Enum nicht benutzen dürft, aber in diesem Fall folgt aus der Aufgabenstellung, dass es anders realisiert werden soll.
Würde in der Aufgabenstellung nicht stehen, dass "zustand" vom Typ "int" sein soll, dann hättet ihr auch Enum verwenden können.

ruffy85

Trainee

  • "ruffy85" is male

Posts: 103

Date of registration: Oct 12th 2005

Location: Hildesheim

Occupation: B.Sc. Informatik / 1. Semester

19

Monday, May 8th 2006, 4:53pm

Ok. Danke für die Information. Will nicht wie bei Scheme Punkte verlieren, nur weil ich Befehle benutze, die bis dato nicht in der Vorlesung dran waren. ;-)

Nur mit dem Stoff aus der Vorlesung ist die jetzige Übung unelegant lösbar, aber machbar.

julianr

Erfahrener Schreiberling

Posts: 298

Date of registration: Oct 13th 2005

Location: I live in a giant bucket.

20

Friday, May 12th 2006, 3:16pm

Quoted

Original von BLUESCREEN
Benutzt doch einfach die Befehle, mit denen ihr das hinkriegt...


Mein Prüfer hat mir gerade geschrieben, dass er sich mit den anderen getroffen hat und dafür jetzt ordentlich Punkte abziehen wird. Wir sollen das verwenden, was der Prüfer sich gedacht hat, und Punkt. Als ob Java an sich nicht schon total frustrierend wäre...