2009-08-03 7 views

Répondre

10

Casting operator (?=) pour les affectations entre variables de référence, dont l'assignabilité est vérifiée dès le démarrage de l'exécution. ?

+2

Notez qu'il est principalement utilisé pour lancer différents types de variables de référence. Lorsque vous affectez entre le même type de variable de référence, vous pouvez toujours utiliser = – Esti

+0

Je veux juste ajouter que cet opérateur est utilisé principalement en downcast, quand vous affectez une obj superclasse à une référence d'une sous-classe plus spécifique, il nécessite un explicit? castING operator) car cela peut conduire à une erreur d'exécution: subclass? = superclass – KurzedMetal

-3

? = Est utilisé pour transtyper une référence d'objet d'une classe héritée en un objet de la super classe dont elle est dérivée.

? =

de type coulée vous aide à vous reporter plusieurs références d'objets de sous-classes dont le type est résolu uniquement au moment de l'exécution. La référence d'objet de classe parente peut contenir les objets et il existe souvent une méthode de classe parent qui peut être utilisée pour déterminer quel objet de sous-classe la référence de type cast contient au moment de l'exécution.

0

C'est l'opérateur Casting (? =) Pour les affectations entre les variables de référence, mais plus précisément, il est l'opérateur de coulée descendante.

0

? = Est utilisé pour désigner un super objet de classe par son objet classe héritée sous la forme

[référence objet de la classe mère]? = [Référence objet de la classe héritée]

Ceci est utile lorsque la résolution de type se produit au moment de l'exécution. Alors que? = Peut aussi être spécifié pour les mises à jour, ce n'est généralement pas nécessaire.

Questions connexes