Les modèles d'utilisation à des fins privées, statique, finale, public, résumé mots clés en java
Je sais ce toutes ces le faire, sauf pour l'abstrait. Je suis actuellement dans le processus de l'enseignement de moi-même java avec ce que je considère un milieu scolaire-niveau d'éducation (mon école était dans un mauvais quartier, alors je suis hampe)...
Mais quels sont exactement les habitudes d'utilisation de ces mots clés? Quand dois-je utiliser quoi? Quand dois-je l'ignorer? Mettre "public" en face de mes cours permet à chaque classe qui l'utilise besoin d'un nouveau fichier, puis-je simplement omettre que si je veux créer un monolithique fichier source?
Chaque bit d'information, je lève les yeux, explique exactement CE que ces faire, il suffit de ne pas donner une vue claire de quand/pourquoi/où je devrais les utiliser.
Merci d'avance,
Anthony
abstract isn't a keyword
? Vous avez besoin de faire une introspection, ou seulement un peu plus de la lecture de vous-même. en.wikipedia.org/wiki/List_of_Java_keywordsyep c'est mon erreur, im en c++ monde en ce moment, désolé pour cette erreur. Après avoir dit que mon point est toujours valide
Les tutoriels officiels sont une bonne ressource pour l'apprentissage de java, la deuxième partie de "Pistes couvrant les notions de base" devrait aider certains download.oracle.com/javase/tutorial
btw, je n'aime pas le "verbosité" tag. Non pas que java n'est pas détaillé, mais c'est pas à cause de ces mots-clés.
OriginalL'auteur ThantiK | 2011-02-22
Vous devez vous connecter pour publier un commentaire.
Pour débutants, voici mes règles de base:
Je vous suggère fortement de lutter contre l'envie d'utiliser un monolithique fichier source. Essayez de garder méthodes plus courte que d'un seul écran, et les classes plus courte de 300 lignes.
Ouais, je viens Python, où la plupart des fichiers contiennent tous de la source dans un fichier unique. Je n'ai pas l'intention de construire d'ÉNORMES projets java, juste de l'utiliser pour de petites tâches pour l'instant et depuis je n'ai pas l'expérience, il est vraiment difficile de garder une trace de toutes les classes quand ils sont divisé en 100 différents fichiers. Cette question est principalement pour aider à mieux la comprendre et de la carte de mon python connaissance de la façon dont java fonctionne.
OriginalL'auteur James Kingsbery
Sources de dire que faire de ces mots-clés dire parce que quand/pourquoi/l'endroit où ils sont utilisés en résulte. Mes explications ont le "quand" de word, par exemple, mais ils suivent directement à partir de la sémantique des mots-clés.
private
doit être utilisé lorsque quelque chose n'est pas utilisé en dehors d'une classe donnéeprotected
doit être utilisé lors de lapublic
est utilisé lorsque quelque chose est accessible par toutes les autres classesLes trois ci-dessus sont des "modificateurs de visibilité". Ils sont utilisés lorsque vous souhaitez limiter l'utilisation de certaines méthodes/champs/classes à un groupe d'objets, et de les cacher à partir d'autres objets. Il y a un autre modificateur de visibilité - celui par défaut (lorsque aucune autre n'est présent). Il est utilisé lorsque vous souhaitez que votre classe/méthode/champ pour être accessible qu'aux classes du même package.
static
est utilisé lorsque vous n'avez pas besoin d'une instance d'une classe (c'est à dire de l'objet) pour l'utiliser:abstract
lorsque vous ne souhaitez pas fournir des implémentations de la classe en cours:final
- lorsque vous ne voulez pas quelque chose à changer.OriginalL'auteur Bozho
Bozho a couvert l'utilise pour les mots-clés assez bien, mais j'ajouterai que, si vous ne déclarez pas un champ d'application à tous les, à votre portée devient colis-privé, ce qui signifie que n'importe qui dans le même package que la classe d'utilisation de cette classe/méthode. En gros, c'est plus permissive que
private
, mais moins permissif que justeprotected
, commeprotected
permet l'accès depuis l'extérieur d'un paquet.D'informations sur le " pas de modificateur d'accès ici:
Je recommande de passer par le tutoriel Java:
Et aussi de prendre un regard sur le livre des questions si vous voulez explorer plus de Java:
OriginalL'auteur wkl
private
,public
etprotected
sont tous utilisés pour déclarer les Portée d'une classe de variable.static
signifie que la chose est un membre de la classe, et non pas un objet instance de la classe.abstract
signifie que la classe ne peut pas directement créé et ne peut être utilisé par les sous-classes. Une méthode abstraite ne peut être définie dans une classe abstraite, et signifie que toute sous-classe doit définir une méthode d'appariement de l'défini une signature.final
signifie que la variable ne peut être affecté à une variable d'une fois à sa création. Une dernière classe/méthode ne peut pas être héritée/remplacées, respectivement.Rester à l'écart de tout mettre dans un seul gros fichier. Utiliser un IDE comme Eclipse, et il sera plus facile de travailler avec du code qui a une classe par fichier. Il vous permet de mieux organiser votre code et encapsuler le code de sorte que vous ne finissent pas dans une situation où tout connaît tout. Cela va conduire à des erreurs comme il devient plus facile à utiliser accidentellement quelque chose l'a été créé pour un but différent.
OriginalL'auteur unholysampler
Afin de comprendre la quand/pourquoi/où de ces mots clés, vous devez obtenir une prise sur certains concepts clés de la Programmation Orientée Objet et Java. Je suggère à la recherche dans L'Encapsulation et Le polymorphisme.
Également sur le dessus de ma tête, je crois que "public" est implicite, de sorte qu'il n'est pas nécessaire, mais sa bonne pratique de l'avoir là.
OriginalL'auteur Ryan Castillo