8
votes

5 façons d'utiliser le mot-clé statique en Java

Je viens d'avoir une interview où une des questions était quelque chose comme "Décrire 5 façons d'utiliser le mot clé statique en Java". Je ne pouvais que penser à 2 sur place, puis j'ai trouvé 2 autres. Quel est le 5ème?

  1. Déclarant un champ appartenant à une classe par opposition à une instance de la classe.
  2. Déclarant une méthode pouvant être appelée à une classe par opposition à une instance.
  3. Déclarant une classe imbriquée comme statique
  4. Définition d'un initialiseur de classe statique.
  5. ???

3 commentaires

Êtes-vous sûr que ce n'était pas "final"? J'utilise celui-là. :)


Je pense probablement pas final parce que je pense que vous pouvez utiliser "Final" de manière indépendante de "statique".


Quelle question d'entretien de la merde. Votre capacité ou autre à proposer les cinq personnes rapidement dans les circonstances d'entrevue ne démontre pas vraiment Java Connaissances OMI. Ne pas pouvoir les nommer que tous à la demande ne signifie pas que vous seriez incapable de les utiliser efficacement dans la pratique.


5 Réponses :


-1
votes

constantes - finale statique (qui est vraiment la même que n ° 1, mais pourrait être considérée comme une utilisation distincte)


2 commentaires

N'est-ce pas le même que «un champ appartenant à la classe»?


Ils sont les mêmes, mais peut-être que l'intervieweur les considère différent lorsqu'il est utilisé dans une interface?



16
votes

importation statique (puisque Java 1.5):

importer statique my.package.myclass. *;


2 commentaires

C'est celui que vous recherchez.


Merci! J'ai vu cela la veille, mais j'ai totalement oublié à ce sujet.



1
votes

déclarerait une interface statique être considérée comme une classe dans ce cas? Sinon, il y a une autre utilisation.


1 commentaires

Je pense que c'est "les interfaces peuvent faire du travail" par étrange.java de Robert Sedgewick



-1
votes

Créer un bloc statique

static 
{

 // Do some static work 

}


1 commentaires

Même chose que # 4 - Définition d'un initialisateur de classe statique "Block"



0
votes

Pour changer le comportement d'une autre méthode statique / variable.


1 commentaires

Envisagez de donner des exemples afin de soutenir votre réponse (les réponses courtes ne sont pas indiquées)