class ou object

class ou object - Java - Programmation

Marsh Posté le 01-05-2006 à 10:40:22    

bonjour,
 
je saisie pas bien quelle est la différence entre une class et un object.
 
merci de vos lumières

Reply

Marsh Posté le 01-05-2006 à 10:40:22   

Reply

Marsh Posté le 01-05-2006 à 10:44:58    

Reply

Marsh Posté le 01-05-2006 à 13:50:26    

On appelle objet l'instance d'une certaine classe

Reply

Marsh Posté le 01-05-2006 à 13:59:24    

elle ne *peut* pas, elle l'est.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 01-05-2006 à 19:28:39    

bon j'ai besoin de exemple concret car je suis vraiment null en programmation.
Admettons que je veuille créer un petit logiciel de gestions des clients, c'est bien un exemple car je suis pas doué en programmation.
 

Code :
  1. public class Client
  2. {
  3. class Client
  4. {
  5. String Nom;
  6. int N°_Client;
  7. }
  8. class Commande
  9. {
  10. int N°_Commande;
  11. int ref;
  12. String Nom
  13. int Quantité;
  14. int Montant_HT;
  15. int Montant_Tva;
  16. int Montant_Ttc;
  17. }
  18. class ligneCommande
  19. {
  20. int N°_ligne;
  21. }
  22. public static  void main (String [] arguments)
  23. }
  24. }//fin du fichier client


 
 
en fait là ou j'ai du mal a différencier une class d'un object, c'est que tout porte le nom class donc cela me pertube
 
donc ça c'est bien le nom du fichier

Code :
  1. public class Client
  2. {


donc si j'ai bien compris ceci c'est les instance d'object donc les méthodes  
 

Code :
  1. class Client
  2. {
  3. String Nom;
  4. int N°_Client;
  5. }
  6. class Commande
  7. {
  8. int N°_Commande;
  9. int ref;
  10. String Nom
  11. int Quantité;
  12. int Montant_HT;
  13. int Montant_Tva;
  14. int Montant_Ttc;
  15. }
  16. class ligneCommande
  17. {
  18. int N°_ligne;
  19. }


Message édité par dodo le 01-05-2006 à 19:42:34
Reply

Marsh Posté le 01-05-2006 à 20:22:14    

Non [:pingouino]
 
Client est une classe, Commande et ligneCommande sont deux autres classes, internes à la première.
 
Un objet, c'est une instance d'une classe, càd que quand tu fais

Code :
  1. Foo bar = new Foo()


Foo est une classe et bar est un objet instance de foo.
 
Les méthodes, ce sont des fonctions attachées à une classe et/ou un objet, ça représente les messages qu'on peut envoyer à un objet.
 
Par exemple si on peut envoyer un message "baz()" à un objet de type Foo (donc à une instance de la classe Foo) on va avoir un truc du style

Code :
  1. public class Foo {
  2.    public void baz() {
  3.        // do something
  4.    }
  5. }


et on pourra faire

Code :
  1. Foo bar = new Foo();
  2. bar.baz(); // on envoie le message "baz" à notre objet "bar" instance de la classe "Foo"


Globalement, j'ai l'impression que tu n'as pas compris grand chose au java ou à la POO et je pense que tu devrais lire Penser En Java / Thinking in Java (la version anglaise si tu te débrouilles bien en anglais, sinon la VF)


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 01-05-2006 à 20:48:44    

ok,
je pensais que mes class  client,commande, ligne_commande étaient des méthodes afin de créer des objetc comme ceci :

Code :
  1. public static void main (String [] arguments)
  2. {
  3. Client Client1=new Client();
  4. Client1.Nom="Dupont";


Reply

Marsh Posté le 01-05-2006 à 21:00:12    

Heuuu non [:pingouino]
Une classe et une méthode sont des trucs complètement différents
 
Et accessoirement tu voudrais peut-être aller lire le Sun Java Tutorial ainsi que les conventions de codage Sun [:pingouino]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 01-05-2006 à 21:12:09    

masklinn a écrit :

Heuuu non [:pingouino]
Une classe et une méthode sont des trucs complètement différents
 
Et accessoirement tu voudrais peut-être aller lire le Sun Java Tutorial ainsi que les conventions de codage Sun [:pingouino]


 
ha bon,
 
ok merci

Reply

Marsh Posté le 02-05-2006 à 13:08:59    

dodo a écrit :

ha bon,
 
ok merci


 
je susi pertubé avec toutes ces informations
 
donc je pense que maintenant cela devrait être bon
 

Code :
  1. public class Client
  2. {
  3. static class compte
  4. {
  5. String Nom;
  6. int Num_Client;
  7. public  void afficherCompte(){
  8. System.out.print ("this.Nom + "," this.Num_client);
  9. }
  10. }
  11. public static void main (String [] arguments)
  12. {
  13. Compte client1=new Compte();
  14. Client1.Nom="Dupont";
  15. client1.afficher();
  16. }
  17. }//fin du fichier client

Reply

Marsh Posté le 02-05-2006 à 13:08:59   

Reply

Marsh Posté le 02-05-2006 à 13:29:24    

Ce code ne compile certainement pas!
 
Les conventions ne sont pas respectées. A quoi sert cette ébauche de inner static class ?!
 
[:pingouino]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 02-05-2006 à 13:36:03    

dodo a écrit :

je susi pertubé avec toutes ces informations
 
donc je pense que maintenant cela devrait être bon
 

Code :
  1. public class Client
  2. {
  3. static class compte
  4. {
  5. String Nom;
  6. int Num_Client;
  7. public  void afficherCompte(){
  8. System.out.print ("this.Nom + "," this.Num_client);
  9. }
  10. }
  11. public static void main (String [] arguments)
  12. {
  13. Compte client1=new Compte();
  14. Client1.Nom="Dupont";
  15. client1.afficher();
  16. }
  17. }//fin du fichier client



Non [:pingouino]
 
C'est quoi l'intérêt de créer une inner static class compte [:pingouino]
 
Et t'as toujours pas parcouru le Sun Java Tutorial, toujours pas lu les Conventions de Codage, et toujours pas lu TIJ/PEJ [:pingouino]
 
En plus ya pas un poil de logique dans ton code [:pingouino]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 02-05-2006 à 13:37:33    

sircam a écrit :

Ce code ne compile certainement pas!
 
Les conventions ne sont pas respectées. A quoi sert cette ébauche de inner static class ?!
 
[:pingouino]


 
si si il a compilé il y avait des petites erreurs que j'ai corrigé mais j'avais pas vu le static,  je crois que dans les objetc on utilise pas le static
 
voilà comme c'est mieux

Code :
  1. public class Client
  2. {
  3. class Compte
  4. {
  5. String Nom;
  6. int Num_Client;
  7. public  void afficherCompte(){
  8. System.out.print (this.Nom + "," + this.Num_Client);
  9. }
  10. public static void main (String [] arguments)
  11. {
  12. Compte client1 = new Compte();
  13. client1.Nom="Dupont";
  14. client1.afficherCompte();
  15. }
  16. }//fin du fichier client


Reply

Marsh Posté le 02-05-2006 à 13:42:11    

Non c'est pas mieux [:pingouino]
 
C'est toujours pas logique, je vois toujours pas à quoi peut servir la classe Client, je vois toujours pas l'intérêt d'avoir un Compte en inner class [:pingouino]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 02-05-2006 à 13:43:13    

Et je parle même pas des conventions de codage sun que tu continues à jeter par la fenêtre [:pingouino]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 02-05-2006 à 13:47:23    

en realité je me base pas sur des supports du formation à distances

Reply

Marsh Posté le 02-05-2006 à 13:51:37    

J'ai rien compris, mais ça doit pas être une bonne nouvelle.


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 02-05-2006 à 13:52:23    

http://forum-images.hardware.fr/themes_static/images_forum/1/flagn1.gif c'est pas un forum d'e-learning ici.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 02-05-2006 à 13:53:19    

Citation :

si si il a compilé


Alors c'était un autre code, ou bien il a compilé dans un autre univers disjoint du notre.
 
[:pingouino]
 
- Conventions pas respectées;
- Modélisation incompréhensible de Compte et Client. Tu ne vois rien qui cloche ?


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 02-05-2006 à 13:55:30    

(ben non il voit pas, vous lui parlez chinois les mecs, là, il a pas le niveau pour vous comprendre, et vous vous en rendez pas compte, non plus ?)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 02-05-2006 à 18:43:09    

the real moins moins a écrit :

(ben non il voit pas, vous lui parlez chinois les mecs, là, il a pas le niveau pour vous comprendre, et vous vous en rendez pas compte, non plus ?)


 
Je suis désolé de vous avoir ennuyé avec mes questions,  :(  
au moin j'essaye de comprendre, car c'est pas evident la programation pour les débutant.

Reply

Marsh Posté le 02-05-2006 à 19:21:23    

Je leur faisais juste remarquer qu'ils ne parlaient pas le bon langage pour que tu puisse comprendre.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 02-05-2006 à 21:30:16    

si tu veux apprendre la programmation, vaudrait mieux commencer avec un langage non orienté objet. Tel que le C.  
Mais bon, si tu veux bien apprendre, procure toi un livre ou tu pourras suivre les exemples. Car la c'est vraiment n'importe quoi

Reply

Marsh Posté le 02-05-2006 à 21:51:04    

moi23372 a écrit :

si tu veux apprendre la programmation, vaudrait mieux commencer avec un langage non orienté objet. Tel que le C.


T'as raison tiens, et pourquoi pas l'ASM aussi [:pingouino]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed