IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Conception de la classe


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut Conception de la classe
    Bonjour,

    Voici la classe suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    package pages.historique.excel;
    
    import jxl.format.Alignment;
    import jxl.write.WritableCellFormat;
    import jxl.write.WritableFont;
    
    public class GlobalExcel
    {
        private static final WritableFont.FontName STANDARD_FONT_NAME = WritableFont.ARIAL;
        
        private static final Integer STANDARD_FONT_SIZE = 12;
            
        public static WritableCellFormat FORMAT_TH = null;
        
        static
        {
            try
            {
                initFORMAT_TH();
            }
            catch (Exception e)
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        
        public static void initFORMAT_TH() throws Exception
        {
            FORMAT_TH = new WritableCellFormat(new WritableFont(STANDARD_FONT_NAME, STANDARD_FONT_SIZE, WritableFont.BOLD, false));
            
            FORMAT_TH.setAlignment(Alignment.CENTRE);
        }
        
    }
    Mais en faisant comme cela je ne peux pas faire :

    - Déclarer FORMAT_TH en final
    - Récupérer l'exception dans l'application appelante

    Comment organiser cette classe ?

    Merci.

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par Mister Nono Voir le message
    - Déclarer FORMAT_TH en final
    - Récupérer l'exception dans l'application appelante
    Ce n'est pas très "joli" d'avoir à traiter des exceptions survenant dans des bloc static... mais bon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    class GlobalExcel
    {
        private static final WritableFont.FontName STANDARD_FONT_NAME = WritableFont.ARIAL;
     
        private static final Integer STANDARD_FONT_SIZE = 12;
     
        public static final WritableCellFormat FORMAT_TH = initFORMAT_TH();
     
        private static Exception EXCEPTION;
     
        private static WritableCellFormat initFORMAT_TH() {
        	WritableCellFormat th = null;
        	try {
        		th = new WritableCellFormat(new WritableFont(STANDARD_FONT_NAME, STANDARD_FONT_SIZE, WritableFont.BOLD, false));
        		th.setAlignment(Alignment.CENTRE);
        	} catch(Exception e) {
        		EXCEPTION = e;
        	}
        	return th;
        }
    }
    a++

  3. #3
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    Merci AdiGuba pour la variable : en fait je ne savais pas que l'on pouvait exécuter une méthode lors de l'initialisation d'un attribut déclaré final.

    Par contre l'Exception ne remonte pas dans l'application même avec ton exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    package pages.historique.excel;
     
    import jxl.format.Alignment;
    import jxl.write.WritableCellFormat;
    import jxl.write.WritableFont;
     
    public class GlobalExcel
    {
        private static final WritableFont.FontName STANDARD_FONT_NAME = WritableFont.ARIAL;
     
        private static final Integer STANDARD_FONT_SIZE = 12;
     
        public static final WritableCellFormat FORMAT_TH = getFORMAT_TH();
     
        private static WritableCellFormat getFORMAT_TH()
        {
            try
            {
                if (FORMAT_TH == null)
                {
                    WritableCellFormat format = new WritableCellFormat(
                            new WritableFont(STANDARD_FONT_NAME,
                                    STANDARD_FONT_SIZE, WritableFont.BOLD, false));
     
                    format.setAlignment(Alignment.CENTRE);
     
                    return format;
                }
            }
            catch (Exception e)
            {
                e.printStackTrace();
            }
     
            return FORMAT_TH;
        }
     
    }
    A+

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Mister Nono Voir le message
    Par contre l'Exception ne remonte pas dans l'application même avec ton exemple :
    Comme je l'ai dit ce n'est pas joli de devoir gérer des exceptions dans les bloc static...


    Je pensais que tu voulais pouvoir la conserver/traiter mais tu te contente de l'afficher...


    Un conseil : si cette exception ne devrait pas survenir le mieux serait de la faire remonter comme une RuntimeException. L'avantage c'est que cela ferait planter le programme plutôt que "d'ignorer" l'erreur...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    catch (Exception e)
    {
          throw new RuntimeException(e);
    }
    a++

  5. #5
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    Merci beaucoup.

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Conception] Hiérarchie de classes et maintenance
    Par olivier1978 dans le forum C++
    Réponses: 15
    Dernier message: 04/10/2007, 22h52
  2. Aide conception diagramme de classes Projet Web
    Par alves.seb dans le forum Diagrammes de Classes
    Réponses: 9
    Dernier message: 12/06/2007, 14h29
  3. [conception] vecteur de classes
    Par r0d dans le forum C++
    Réponses: 7
    Dernier message: 28/12/2005, 12h00
  4. [CONCEPTION] vector de classes heritées
    Par A-S-H dans le forum SL & STL
    Réponses: 9
    Dernier message: 28/12/2005, 09h50
  5. Conception d'une classe parente
    Par VincentB dans le forum Langage
    Réponses: 9
    Dernier message: 24/06/2003, 17h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo