Bonjour la liste,

J'ai l'habitude, lorsque je d�veloppe une application, de 
mettre un certain nombre de constantes (oops : de variables 
statiques - voire final) dans un Config.java.

Ceci me permet, par exemple, d'�crire des trucs du style :
if (Config.DEBUG) {
...
}

Lorsque j'�cris une classe Toto que je met dans le package 
truc, cette classe commence bien entendu par :
package truc;
import Config;

Et voil� le probl�me : en compilant avec le jdk1.4, il me 
sort une erreur � la compilation de Toto.java :

truc/Toto.java:8: '.' expected
import Config;
                  ^

Inutile de pr�ciser que j'ai aussi une erreur sur 
Config.DEBUG, car il ne reconna�t pas Config.

Je me doute bien qu'en mettant Config dans le package 
monappli et Toto dans monappli.truc, le probl�me serait 
r�solu par un import monappli.Config, mais que voulez-vous, 
j'aime bien ne pas faire trop propre parfois.

Un autre truc rigolo est que la version de forte pour 
SDK1.4 (<TROLL sur les IDE>que je trouve pas mal par 
rapport aux versions pr�c�dentes -ce qui m'a pouss� � 
passer en 1.4 - et que j'utilise � la place de mon 
emacs/jde habituel pour faire des interfaces</TROLL>) ne me 
g�n�re pas d'erreur !

Bref, comment faire pour que mon import soit accept� par le 
compilateur du jdk1.4 ? S'agit-il d'un bug connu, ou bien 
est-ce une volont� d'imposer un d�veloppement plus propre 
(plus acad�mique) en imposant un package pour une appli 
java ?

Autre question :
Dans une classe qui h�rite d'un JFrame, j'ai surcharg� les 
m�thodes permettant d'ouvrir la fen�tre, � savoir 
setVisible(boolean), show() et show(boolean).
Bien entendu, le compilo me sort que c'est deprecated, je 
le sais bien mais je veux �tre s�r que mon code soit 
ex�cut� � l'ouverture de la fen�tre.
Mis � part le fait que j'aimerais que le compilateur se 
taise l�-dessus (pour voir si je n'ai pas d'autre 
deprecated dans mon code), je me suis rendu compte d'un 
truc bizarre :
Initialement, au lieu d'appeler super.show() dans ma 
m�thode show(), j'appelais setVisible(true). Or, surprise, 
en ouvrant ma fen�tre avec setVisible(true), je me 
retrouvais sur un StackOverflow qui me permettait de 
constater que le super.setVisible(true) de mon 
setVisble(true) appelait show() (qui appelait mon 
setVisible()), d'o� la boucle....
Est-ce � dire que dans les librairies du jdk1.4 les 
m�thodes deprecated sont utilis�es ? (qu'elles soient 
impl�ment�es, je comprends, mais utilis�es !?!)
Bon, je n'ai pas de question particuli�re � poser 
l�-dessus, j'ai bien entendu chang� mes setVisible(true) en 
super.show(), et puis j'ai sorti mon code ajout� dans une 
tierce m�thode et tout fonctionne. Mais mon �tonnement 
est-il justifi� ?

St�phan BERNARD
-- 
St�phan BERNARD [EMAIL PROTECTED]
LISC/CEMAGREF - 24 av. des Landais - 63172 Aubi�re Cedex

Répondre à