CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS

Sujet : [Java] à quoi servent les attributs ?

DébutPage précedente
1
Page suivantePage suivante
Morrocan47 Morrocan47
MP
Niveau 6
21 juillet 2019 à 07:25:05

Je suis débutant et je viens de regarder une vidéo sur les attributs, mais je saisis pas trop l'intérêt pour le moment :(

exemple :

public class Test{
	public Test(String x, int num) {
		
		
		this.mX=x;
		this.mN=num;
		
		System.out.println(mX + " = " + "num" + mN);
		
	}
	
	private String mX;
	private int mN;
}

peut-être remplacé par cette seule ligne :

public class Test{
	public Test(String x, int num) {
		
		
		
		System.out.println(x + " = " + "num" + num);
		
	}
	
	
}

Pourquoi on passe par des attributs qui complexifient le code au lieu de se servir de variables :question:
Si quelqu'un peut m'éclairer et me vulgariser ce à quoi ils pourraient servir plus tard, merci :noel:

LambdaFunction LambdaFunction
MP
Niveau 10
21 juillet 2019 à 08:00:30

Les attributs servent à stocker la valeur dans l'objet, pour pouvoir être réutilisée plus tard.
Dans ton exemple, les variables sont volatiles et ne sont plus connues après l'exécution de ta méthode.

Prends du recul sur ta classe et imagine un programme plus complexe. Par exemple la gestion d'un Panier sur un site de e-commerce.

Ce panier sera constitué d'articles.
En pseudo-code (ça ne compile pas, j'ai fait ça à titre d'exemple en étant agnostique d'un langage) :

class Cart {
  List<Article> articles

  add(Article article) {
      articles.add(article)
  }

  Number priceTotal() {
     return loop(articles)
         .sum(price)
  }
}

Si tu ne stockes pas les articles de façon "interne" dans le panier... tu perdras la donnée et ne seras pas en mesure de connaître la liste de tous les articles quand tu passeras la commande ou de connaître le prix total à payer.

Nefr2 Nefr2
MP
Niveau 34
21 juillet 2019 à 19:36:38

L'exemple que tu as trouvé est pas fou aussi il porte à confusion :ok:

 public Test(String x, int num) 

permet de construire un objet de type Test, il a pas vocation a effectuer des tâches comme afficher une somme. Ici en affichant un truc il voulait juste montrer qu'on peut utiliser les attributs quoi, mais c'est pas le but réel de la création d'objet :hap:

Un objet c'est comme un nouveau type de variable. Par exemple si je veux un objet Localisation, qui contient des coordonnés. Il me faudra deux attributs int longitude et int latitude. Et j’obtiendrai un "nouveau type de variable" qui stock des localisations sur le globe :ok:

PatateChaude16 PatateChaude16
MP
Niveau 7
23 juillet 2019 à 16:16:44

C'est comme stocker la largeur et la longueur d'un objet rectangle :hap:

Yllid Yllid
MP
Niveau 16
30 juillet 2019 à 00:27:04

Vu l'exemple que tu donnes l'auteur tu ne dois pas avoir entendu parler de programmation orientée objet. Va te documenter sur le sujet, tout deviendra plus clair

DébutPage précedente
1
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : godrik, LGV
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

La vidéo du moment