CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • 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 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Java je ne comprend pas les instances

Pseudo supprimé
Pseudo supprimé 04 janvier 2016 à 19:52:02

Bonjour

alors déjà mettons les points sur les i la programmation est surtout un hobby et aussi un moyen d'ameliorer ma logique pour m'améliorer en maths etc ...

Donc je débute Java

Mais le probleme c'est que je ne comprend pas vraiment les instances si vous pouvez m'éclairer ce serait sympa merci

AnimalFamilier monAnimal = new AnimalFamilier();

je ne comprend pas cette syntaxe

et par ailleurs je n'ai pas vraiment compris le return il renvoie le resultat final d'une methode a une class qui l'appelle ?

merci de m'éclairer si par ailleurs vous avez des conseils des guides

PS : je suis le tutoriel java enfant

Pseudo supprimé
Pseudo supprimé 04 janvier 2016 à 20:13:02

non je ne suis pas le tutoriel java enfant mais je le suiT

_skip
_skip
Niveau 10
04 janvier 2016 à 20:24:36

Il faudrait que tu résumes où tu en es, tu es à l'aise avec les notions de variables, méthodes etc...?
Déjà il faut bien identifier le vocabulaire pour éviter de s'emmêler les pinceaux.

AnimalFamilier c'est une classe.
monAnimal c'est une instance de la classe AnimalFamilier, aussi appelé un objet de type AnimalFamilier

Dans ton code on crée un exemplaire de AnimalFamilier et on enregistre sa référence dans monAnimal.

Et oui, return ça retourne le résultat d'une méthode à celui qui y fait l'appel.

Pseudo supprimé
Pseudo supprimé 04 janvier 2016 à 20:32:09

Le 04 janvier 2016 à 20:24:36 _skip a écrit :
Il faudrait que tu résumes où tu en es, tu es à l'aise avec les notions de variables, méthodes etc...?
Déjà il faut bien identifier le vocabulaire pour éviter de s'emmêler les pinceaux.

AnimalFamilier c'est une classe.
monAnimal c'est une instance de la classe AnimalFamilier, aussi appelé un objet de type AnimalFamilier

Dans ton code on crée un exemplaire de AnimalFamilier et on enregistre sa référence dans monAnimal.

Et oui, return ça retourne le résultat d'une méthode à celui qui y fait l'appel.

Oui les méthodes et variables j'ai parfaitement compris selon moi en tout cas la ça ma beaucoup aidé merci de ton explication

et sinon une autre sintaxe que je comprend pas c'est le this

Message édité le 04 janvier 2016 à 20:32:33 par Pseudo supprimé
Grabugelelion
Grabugelelion
Niveau 5
04 janvier 2016 à 20:37:31

Le 04 janvier 2016 à 20:32:09 heliosx a écrit :

Le 04 janvier 2016 à 20:24:36 _skip a écrit :
Il faudrait que tu résumes où tu en es, tu es à l'aise avec les notions de variables, méthodes etc...?
Déjà il faut bien identifier le vocabulaire pour éviter de s'emmêler les pinceaux.

AnimalFamilier c'est une classe.
monAnimal c'est une instance de la classe AnimalFamilier, aussi appelé un objet de type AnimalFamilier

Dans ton code on crée un exemplaire de AnimalFamilier et on enregistre sa référence dans monAnimal.

Et oui, return ça retourne le résultat d'une méthode à celui qui y fait l'appel.

Oui les méthodes et variables j'ai parfaitement compris selon moi en tout cas la ça ma beaucoup aidé merci de ton explication

et sinon une autre sintaxe que je comprend pas c'est le this

'this' fait référence à l'instance de la classe.
C'est le "contexte".

Pseudo supprimé
Pseudo supprimé 04 janvier 2016 à 20:40:09

Le 04 janvier 2016 à 20:37:31 Grabugelelion a écrit :

Le 04 janvier 2016 à 20:32:09 heliosx a écrit :

Le 04 janvier 2016 à 20:24:36 _skip a écrit :
Il faudrait que tu résumes où tu en es, tu es à l'aise avec les notions de variables, méthodes etc...?
Déjà il faut bien identifier le vocabulaire pour éviter de s'emmêler les pinceaux.

AnimalFamilier c'est une classe.
monAnimal c'est une instance de la classe AnimalFamilier, aussi appelé un objet de type AnimalFamilier

Dans ton code on crée un exemplaire de AnimalFamilier et on enregistre sa référence dans monAnimal.

Et oui, return ça retourne le résultat d'une méthode à celui qui y fait l'appel.

Oui les méthodes et variables j'ai parfaitement compris selon moi en tout cas la ça ma beaucoup aidé merci de ton explication

et sinon une autre sintaxe que je comprend pas c'est le this

'this' fait référence à l'instance de la classe.
C'est le "contexte".

Donc imaginons j'ai une classe peugeot concept et une instance peugeot usine comment dois je employer this ?

et je ne comprend pas aussi

AnimalFamilier monAnimal = new AnimalFamilier();

Le premier et le dernier AnimalFamilier représente quoi

TintinMage
TintinMage
Niveau 10
04 janvier 2016 à 20:46:32

Skynet afin d'annihiler la race humaine va créer des terminators, les T-101. Skynet ne sait pas encore comment créer un terminator donc avant de fondre l'acier elle a besoin de faire ses plans; ses dimensions, sa résistance, sa vitesse et aussi les fonctions qui lui permettent d'identifier un ennemi, comment courir, comment parler
https://image.noelshack.com/fichiers/2016/01/1451936003-t-900-infiltrator-concept.jpg
Maintenant que c'est prêt, Skynet commence la production des terminators à partir de ces plans là, elle fait introduire la matière première tel que l'or et le fer à l'usine de fabrication qui va les transformer et créer un terminator prêt à combattre https://image.noelshack.com/fichiers/2016/01/1451936729-terminator-salvation-0.jpg

Donc pour résumer la classe c'est les plans et les instances c'est les terminators

Message édité le 04 janvier 2016 à 20:47:45 par TintinMage
TintinMage
TintinMage
Niveau 10
04 janvier 2016 à 20:51:54

Chaque terminator a une conscience de lui même, représenté par le mot "this"

Pseudo supprimé
Pseudo supprimé 04 janvier 2016 à 21:00:18

Ok je comprend mieux je te remercie mais je ne comprend toujours pas la syntaxe

AnimalFamilier monAnimal = new AnimalFamilier();

J'ai compris que monAnimal est une instance de AnimalFamilier mais pourquoi avoir mis AnimakFamilier avant l'instance pourquoi ne pas avoir fait simplement

monAnimal = new AnimalFamilier(); ?

TintinMage
TintinMage
Niveau 10
04 janvier 2016 à 21:05:30

Parce que Java et de typage statique fort, donc chaque variable quand elle est déclarée doit avoir son type avec, contrairement aux langages dits dynamique comme python qui ne demandent pas à préciser le type

Message édité le 04 janvier 2016 à 21:07:56 par TintinMage
MrGreez94
MrGreez94
Niveau 10
04 janvier 2016 à 21:09:05

Le 04 janvier 2016 à 21:00:18 heliosx a écrit :
Ok je comprend mieux je te remercie mais je ne comprend toujours pas la syntaxe

AnimalFamilier monAnimal = new AnimalFamilier();

J'ai compris que monAnimal est une instance de AnimalFamilier mais pourquoi avoir mis AnimakFamilier avant l'instance pourquoi ne pas avoir fait simplement

monAnimal = new AnimalFamilier(); ?

Java est un langage fortement typé. Tu dois donc indiquer au compilateur le type de ta variable monAnimal. Ici monAnimal est une instance de la classe AnimalFamilier, ta variable monAnimal sera donc de type AnimalFamilier.

exemple :

int monEntier  = 7;

tu indique au compilateur que ta variable monEntier contient un entier et uniquement un entier. C'est une contrainte sensée, que tu t'imposes pour permettre au compilateur par la suite de te gronder si tu fais quelque chose qui va pas.

Si tu veux un variable contenant un nombre d'enfant, tu ne veux que des nombres entiers un nombre décimal n'aurait pas de sens, tu déclares donc la variable comme entier. Si par la suite, tu assignes autre chose qu'un entier à cette variable, le compilateur va t'insulter et tu auras sûrement évité un bug bête et chiant à débusquer.

Pseudo supprimé
Pseudo supprimé 04 janvier 2016 à 21:14:07

Merci

je vient de tout comprendre maintenant

si jamais j'ai d'autre question je vous les ferais parvenir

Pseudo supprimé
Pseudo supprimé 06 janvier 2016 à 17:01:25

Bonjour

pourquoi ce code est faux ?

public class Avion {
	int altitudeActuelle;
	Avion(int altitudeDepart) {
		altitudeActuelle = altitudeDepart + altitudeActuelle;
	}
	
	public void afficherAlt() {
		System.out.println("Votre altitude actuelle est de " + altitudeActuelle);
	}
	
	Avion monAvion = new Avion(5000);
	monAvion.afficherAlt();

}

J'ai une erreur au dernier afficherAlt();

mon objectif avec ce code est de créer une instance qui a une altitude specifique est d'ensuite appeler l'afficheur pour savoir mon altitude

darkepsylon
darkepsylon
Niveau 10
06 janvier 2016 à 17:54:02

Parce que afficheralt() n'est pas dans ta class avion.

darkepsylon
darkepsylon
Niveau 10
06 janvier 2016 à 17:55:14

Ne fais pas attention , j'ai louper une accolade sur mobile ...

Pseudo supprimé
Pseudo supprimé 06 janvier 2016 à 18:02:43

Le 06 janvier 2016 à 17:55:14 darkepsylon a écrit :
Ne fais pas attention , j'ai louper une accolade sur mobile ...

Ouais l'affichage est bizarre pas grave l'erreur c'est indentifier expected after this token

darkepsylon
darkepsylon
Niveau 10
06 janvier 2016 à 18:14:51

Essaye d'instantier ton Objet avion en dehors de ta class avion , Ça devrais resoudre ton problème

Et tu n' initialise jamais altitudeActuelle au passage .
Tu dis qu'elle est égal a elle même plus altitudebase sans jamais lui donner de valeur.

Ça peut poser problème je pense.

Pseudo supprimé
Pseudo supprimé 06 janvier 2016 à 18:21:57

Le 06 janvier 2016 à 18:14:51 darkepsylon a écrit :
Essaye d'instantier ton Objet avion en dehors de ta class avion , Ça devrais resoudre ton problème

Et tu n' initialise jamais altitudeActuelle au passage .
Tu dis qu'elle est égal a elle même plus altitudebase sans jamais lui donner de valeur.

Ça peut poser problème je pense.

sauf erreur je crois avoir vu sur le guide java enfant que si on ne donnait pas de valeur a une variable de type int elle avait 0 par défaut mais en soit oui j'aurais pu mettre 0

Pseudo supprimé
Pseudo supprimé 06 janvier 2016 à 18:26:06

C'est bon ça marche il fallait séparer les classes je ne comprend pas pourquoi surtout que j'ai vu du code ou on crée des instances dans une classe directement

TintinMage
TintinMage
Niveau 10
06 janvier 2016 à 19:28:16
monAvion.afficherAlt();

Une expression comme ça ne peut pas se balader en dehors d'une fonction

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Création de sites web
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment