downcast

Status
Nicht offen für weitere Antworten.
G

Gast

Gast
Hallo,

warum heisst es Downcats wenn man eine Subklasse in die Vaterklasse castet. Sollte das nicht
Upcast heissen. Oder verstehe ich da etwas nicht.

Grüsse
Gast
 
S

SlaterB

Gast
http://en.wiktionary.org/wiki/downcast

to downcast (third-person singular simple present downcasts, present participle downcasting, simple past and past participle downcast or downcasted)

(transitive, obsolete) To cast or throw up; to turn upward.
(transitive, Scotland) To taunt; to reproach; to upbraid.
(transitive, computing) To cast from supertype to subtype.
 
G

Gast

Gast
Letztendlich ist die Subclass eine Weiterentwicklung der Parentclass, somit ist das casten zur Vaterklasse ein Rückschritt und damit downcast.
 
G

Gast

Gast
ok das macht Sinn.

Was aber ist das besondere daran wenn man eine Klasse zurückwandelt. Was erreicht man dadurch

Grüße
Gast
 
S

SlaterB

Gast
ich selbst benutze den Begriff nicht gerade,
möchte aber nochmal mit Nachdruck darauf hinweisen,
dass ein Downcast meiner Meinung nach nicht 'eine Subklasse in die Vaterklasse casten' bedeutet
und die 'Rückschritt'-Erklärung für mich keinen Sinn ergibt
 

Murray

Top Contributor
SlaterB hat gesagt.:
ich selbst benutze den Begriff nicht gerade,
möchte aber nochmal mit Nachdruck darauf hinweisen,
dass ein Downcast meiner Meinung nach nicht 'eine Subklasse in die Vaterklasse casten' bedeutet
und die 'Rückschritt'-Erklärung für mich keinen Sinn ergibt

Richtig, normalerweise versteht man unter Downcast den Cast von der Basisklasse in die abgeleitete Klasse, also im Englischen vom super-type zum sub-type. Und super nach sub impliziert ja irgendwie die Richtung von oben nach unten, daher also downcast

http://en.wikipedia.org/wiki/Downcasting hat gesagt.:
In object-oriented programming, downcasting or type refinement is the act of casting a reference to a base class to one of its derived classes.
 

Murray

Top Contributor
Gast hat gesagt.:
jetzt verstehe ich garnichts mehr
Dann nochmal im Kontext des ursprünglichen Posts:

Gast hat gesagt.:
warum heisst es Downcats wenn man eine Subklasse in die Vaterklasse castet.
Heisst es nicht. Downcast ist der Cast von der Basisklasse in die abgeleitete Klasse.

Gast hat gesagt.:
Sollte das nicht Upcast heissen.
Richtig, das Casten der abgeleiteten Klassen in die Basisklasse ist ein Upcast.


Bsp:
Code:
String s1 = "";
Object o1 = (Object)s1; //--- expliziter Upcast
Object o2 = s1; //--- impliziter Upcast
String s2 = (String)o1; //--- Downcast
Integer i = new Integer( 1);
Objtec o3 = i;
String s3 = (String)o3;  //--- Downcast; wird vom Compiler zwar akzeptiert, wird aber zur Laufzeit zu einer Exception fuehren
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben