5 Stimmen

Upcasting bei der Herstellung von Objekten

Angenommen, Sie haben eine Shape Basisklasse und verschiedene abgeleitete Typen: Circle , usw.

Gibt es jemals einen Grund zu upcast genau dort, wenn ein neues Objekt zu machen, durch das Schreiben dieser:

Shape s = new Circle();

stattdessen:

Circle s = new Circle();

und sind die s Gegenstand dieser beiden Aussagen in irgendeiner Weise voneinander unterscheiden?

0voto

ashishjmeshram Punkte 12225

Ich stimme dem zu, was @WhiteFang34 sagt.

Siehe dies Kodierung an Schnittstellen? Das könnte Ihnen helfen.

-2voto

developer Punkte 9361

Kreis s = new Kreis();
hier bezieht sich das Objekt auf die Klasse Cricle

Shape s = new Circle(); hier bezieht sich das Objekt auf die Schnittstelle

Beide sind gleich.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X