Langage

Class.NewInstance Méthode

Définition

Crée une instance de la classe représentée par cet Class objet.

[Android.Runtime.Register("newInstance", "()Ljava/lang/Object;", "")]
public Java.Lang.Object NewInstance();
[<Android.Runtime.Register("newInstance", "()Ljava/lang/Object;", "")>]
member this.NewInstance : unit -> Java.Lang.Object

Retours

instance nouvellement allouée de la classe représentée par cet objet.

Attributs

Exceptions

si le constructeur par défaut n’est pas visible.

si l’instance ne peut pas être créée.

Remarques

Crée une instance de la classe représentée par cet Class objet. La classe est instanciée comme si une new expression avec une liste d’arguments vide. La classe est initialisée si elle n’a pas déjà été initialisée.

Ce membre est déconseillé. Cette méthode propage toute exception levée par le constructeur nullaire, y compris une exception vérifiée. L’utilisation de cette méthode contourne efficacement la vérification des exceptions au moment de la compilation qui serait effectuée par le compilateur. La java.lang.reflect.Constructor#newInstance(java.lang.Object...) Constructor.newInstance méthode évite ce problème en encapsulant toute exception levée par le constructeur dans un (vérifié) java.lang.reflect.InvocationTargetException.

<p>L’appel

<pré/pré-pré>clazz.newInstance()<>

peut être remplacé par

<pré/pré-pré>clazz.getDeclaredConstructor().newInstance()<>

La dernière séquence d’appels est déduite pour pouvoir lever les types InvocationTargetException d’exceptions supplémentaires et NoSuchMethodException. Ces deux types d’exceptions sont des sous-classes de ReflectiveOperationException.

Java documentation pour java.lang.Class.newInstance().

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à