Zuweisungs Regeln

lernen.2007

Erfahrenes Mitglied
Hallo Leute,

ich habe mit google gesucht aber nichts gefunden. Ich will endlich mal alle Zuweisungsregeln von JAVA wissen

z.B. ein Klasse kann auf eine Interface, welche diese Interface implementiert hat verweisen.

Aber es gibt bestimmt noch weitere Regeln oder?

Gruß
erkan erpolat
 

bsp.:
wenn
Java:
class bla1 {...}
class bla2 extends bla1 {...}
oder
Java:
interface bla1 {...}
class bla2 implements bla1 {...}
dann geht
Java:
bla1 k=(bla1)bla2 t;
kannst aber nicht
Java:
bla2 k= bla1 t
da bla2 sozusagen eine genauere definition von bla1 ist.

aber musst noch beachten, das in diesen fällen, vorausgesetzt es sind keine primitiven datentypen, nicht k der wert/die werte von t zugewiesen werden, sondern nur ein verweis auf die variable t geliefert wird. dh. änderst du t irgendwie ohne t neu zu initialisieren, ändert sich automatisch k.

ich würde dir vorschlagen das selber mal mit testklassen auszuprobieren..
 
Hi,

Ich weiß nicht genau was du für Regeln meinst?
Also wenn's um einfache Objekt orientierte Programmierung geht, hast du dir die Antwort schon selbst gegeben:

so referenzieren? Wird es denn so gehen?

z.B. eine Unterklasse kann auf eine Oberklasse verweisen aber andersrum geht es nicht.

Du kannst im beim zuweisen immer einer allgemeiner gehaltenen Klasse ne spezialisiertere Klasse zuweisen. Immer runter im Vererbungsbaum. Also kann z.B. in Java die Klasse Object alles speichern. Du musst dir das halt vorstellen was passieren würde wenn du sagen wir ein einfaches Object nem String zuweisen würdest und dann versuchst die toUpperCase() Methode aufzurufen. Dann hatte dein Object ja keine Definition für diese Methode (ich hoffe ich hab das halbwegs verständlich ausgedrückt ^^).

Oder meinst du auch speziellere Sachen wie Generics, Autoboxing und sowas?
dann würde ich dir nen besuch auf der "Insel" empfehlen :)

Gruß
Daniel
 
Du musst dir das immer in Beispielen vorstellen:

Ein Stuhl im Kino mit Getränkehalter ist immer noch ein Stuhl auf dem man sitzen kann weils eben ein Stuhl ist, aber es gilt nicht dass JEDER Stuhl einen Getränkehalter hat in dem ich mein Getränk abstellen kann.

Der Stuhl im Kino ist damit eine Spezialisierung eines Stuhls: Er erweitert diesen um die Funktion Getränkehalter. Im Kino sitzt man auf speziellen Stühlen.

Andersrum ist Stuhl die Generalisierung. Allen Stühlen ist gemein dass man darauf sitzen kann.
 
Zurück