J'essaie d'appeler un constructeur public d'une classe publique située dans un paquet de mon projet à partir de la classe principale, situé dans une classe d'un autre paquet différent du premier, mais situé dans le même projet. P >
J'ai compris que le modificateur public vous accordait d'accéder aux méthodes de n'importe quel emplacement à l'intérieur ou à l'extérieur du colis, donc j'essaie simplement de créer et d'insérer un nouvel objet de la classe publique d'abord mentionnée. P>
f.e: j'essaie quelque chose comme .... nom de classe newObject = nouveau nom de classe (); de la classe principale p>
En fait, afin de pouvoir utiliser cela (IM à l'aide de NetBeans IDE), je dois importer la classe / la méthode que je veux appeler, même si elles ont le modificateur public. P>
Ma question est ... Y a-t-il un moyen d'utiliser ces méthodes sans avoir besoin de les importer vers la classe principale? P>
Je suis nouveau dans cette page Web, désolé s'il y a quelque chose de mal à la question. p>
3 Réponses :
Vous pouvez utiliser le nom de la classe entièrement qualifié à la place.
a.b.c.MyClass myClass = new a.b.c.MyClass();
Le compilateur Java restreint sa recherche de cours à l'intérieur du colis uniquement. Afin de tirer parti de toute classe appartenant à un autre paquet, vous devez l'importer explicitement. Vous pouvez en savoir plus sur les packages ici . P>
Les spécificateurs d'accès sont davantage de restreindre les méthodes d'être accessibles par le monde extérieur. Ces spécificateurs d'accès appliquent des restrictions supplémentaires au-dessus de ce qui est appliqué par des forfaits. Vous pouvez vous référer à Ce lien pour les spécificateurs d'accès. p>
qualification et visibilité ont peu à faire avec l'autre. Ce sont des concepts différents. P>
qualification strong> concerne le compilateur vous demandant: "D'accord, vous mentionnez un nom de classe, mais il pourrait y avoir des milliers de personnes avec ce nom. Lequel tu veux dire?" P> public code>,
protégé code>,
privé code> et paquet-privé em>) est à propos de laquelle la classe peut accéder (c.-à-d. Appeler ou utiliser) IT. P>
Vous n'importez pas de méthodes. Pas clair ce que vous demandez.
Public = Classes Tous visibles pour tous .Package = paquet ou hiérarchie .default = visibilité du paquet. Privé = peut être utilisé uniquement par classe extérieure. S'il vous plaît vérifier les modificateurs d'accès
Voir Comment demander pour des conseils sur la mise en forme et la formulation d'une meilleure question