0
votes

Créer un objet Java à la demande

J'ai une méthode privée Java et j'essaie de trouver le meilleur moyen de créer un objet à l'intérieur de la méthode. Voici deux approches différentes que j'essaye:

APPROCHE A: STRAND> P>

 private void createObject() {
     Object A = new Object()
     if (conditionA) {
         //do some action X with Object A
     } else {
         //Do something without Object A
         if (conditionB) {
             return;
         }
         //do some action Y with Object A
     }
     return;
 }


1 commentaires

Dites-nous plus sur votre cas d'utilisation prévu et le problème que vous essayez de résoudre à la place. Peut-être que vous avez trop compliqué la question.


4 Réponses :


0
votes

Je pense que si vous souhaitez initialiser l'objet avec valeur par défaut , vous devez le faire dans le lieu de déclaration xxx


0 commentaires

0
votes

approche A est meilleur.

En cela, considérez «si» la condition n'est pas satisfaite et cela passe dans «autre».

là si conditionné est satisfait, il retournera que la mémoire.So n'est pas allouée à un.

Dans l'approche B, une allocation de mémoire inutilement est effectuée qui n'est pas utilisée dans le scénario ci-dessus.


0 commentaires

0
votes

J'irais avec une approche A, car il est seulement nécessaire d'initialiser l'objet en cas de besoin.

Si l'initialisation de cet objet est plutôt compliquée, afin d'éviter de vous répéter, vous définissez soit un statique méthode assistant afin d'initialiser l'objet ou de vous passer via un fournisseur <> : xxx

et ensuite à deux endroits Lorsque l'objet est censé être créé, vous faites xxx

(note que les variables sont généralement écrites en minuscules / camelcases).


1 commentaires

Je pense que cela n'arrête pas de la question de la question, opt spécifiquement ses problèmes et ses solutions possibles.



1
votes

Écrivons la table de vérité xxx

Je pense que cela se traduit par: xxx

Bonne pratique consiste à réduire la portée des variables comme beaucoup aussi possible. Et si l'instanciation est chère, vous souhaitez également réduire le nombre de fois que vous l'instanciez. Ici, l'objet a est uniquement initialisé si nécessaire et sa portée est aussi petite que possible (un seul si bloc)


1 commentaires

Les font quelque chose sont deux choses différentes. Édité ci-dessus. Ma faute