Java hérite de C++ et C. Dans ces langues, static
a deux significations. Une variable locale (portée de la fonction) qualifiée static
a un sens quelque peu similaire à celle d'un champ statique dans une classe. Java cependant ne prend pas en charge ce contexte de "statique". La qualification de la variable ou de la fonction en tant que static
en C ou C++ à la portée de fichier signifie "Ssh! Ne dites pas à l'éditeur de liens!". Java ne supporte pas ce que cela signifie d' static
, soit.
En anglais, le même mot peut avoir plusieurs significations selon le contexte. Rechercher tous les plus couramment utilisées mot dans le dictionnaire, vous trouverez de multiples définitions de ce mot. Certains mots n'ont pas seulement des significations multiples, qu'ils ont de multiples parties du discours. "Contre", par exemple, peut être un nom, un verbe, un adjectif ou un adverbe, selon le contexte. D'autres mots peuvent avoir des significations contradictoires, selon le contexte. "Excuses" peut signifier "je suis désolé!", ou il peut signifier "je ne suis pas désolé du tout!" Un premier exemple de ce dernier est "Un Mathématicien a présenté ses Excuses" par G. H. Hardy. L'anglais n'est pas unique à cet égard; la même chose s'applique à n'importe quelle langue les humains utilisent pour communiquer les uns avec les autres. En tant qu'humains, nous sommes habitués à des mots ayant des significations différentes selon le contexte.
Il y a un conflit inhérent entre le fait d'avoir trop peu de mots clés et de trop nombreux dans un langage informatique. Lisp, de suite, et smalltalk sont très belles langues avec très peu, le cas échéant, des mots-clés. Ils ont quelques caractères spéciaux, par exemple, d'ouvrir et de fermer les parenthèses en lisp. (Divulgation complète: je l'ai programmé dans chacun de ces trois langues, et j'ai adoré.) Il y a un problème ici: Bonne chance à lire le code que vous avez vous-même écrit de six mois après le fait. Même plus de chance de convertir ce code à quelqu'un d'autre. En conséquence, ces langues ont aussi un nombre assez limité d'adhérents. D'autres langues, aller plus haut et de la réserve d'un grand nombre de mots "comme mots-clés." (Divulgation complète: je ai été forcé de programme dans ces langues, et j'ai détesté ça.)
Trop peu ou trop de mots clés dans un langage informatique des résultats de la dissonance cognitive. Ayant le même mot clé contextes différents, dans différents ne constitue pas, car en tant qu'humains, nous sommes habitués à cela.