Bonjour à tous,
j'ai lu pas mal de sujets sur ce point et je me dis que la compréhension de statique vs non statique n'est pas si simple. La définition MSDN ne m'éclaire pas des masses.
En fait, une classe outil assez simple (genre Math) je la mets en statique : OK. Mais pour le reste c'est très flou pour moi.
Je dois gérer des adresses. J'ai donc fait une classe Address (génial non ?)
Dedans j'ai ajouté une classe Section en statique qui contient deux méthodes statiques. L'une d'entre elles prend en paramètre une instance d'un objet.
Est-ce que le fait de manipuler une instance dans une méthode statique est problématique ?
Ensuite dans cette même classe Address, je souhaite contrôler mon adresse.
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 public class Address { public static class Section { public static XML sectionManagement(object oServiceCalled) { foreach (MyObJLine in (MyObjTable)oServiceCalled) { //...blabla } return monobjXML; } } }
Bizarrement, j'ai décidé ce coup-ci de ne pas faire une méthode statique !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public XML controlAddressBlock(XML addressBlock) { AddressBlockData abd = new AddressBlockData(addressBlock); //.... control return abd.ToXML(); }
Du coup dans l'appelant je dois instancié un objet adresse :
Comme vous le voyez je ne sais pas trop bien sur quel pied danser.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Address blockAddress = new Address(); blockAddress.controlAddressBlock(addressBlock)
Le fait de manipuler addressBlock qui est clairement un objet instancié au sein d'une méthode statique me fait craindre des problèmes d'écrasement.
Mais en même temps je le fais bien avec oServiceCalled dans la class static Section.
Donc merci d'avance pour vos conseils ou liens vers de la littérature didactique
bonne soirée !
Partager