Quelques questions concernant le java

Résolu
diesel -  
 Jadur -
Bonjour,

J'aimerais savoir si le java fonctionne dans plusieurs environnements,
as t'il été conçu pour effectuer des calculs mathématiques.

Qu'est-ce que vient faire static dans une déclaration d'une méthode ou d'un attribut?

merci

A voir également:

2 réponses

Utilisateur anonyme
 
Bonjour, je t'invite à lire ce cours sur le java, toutes les réponses à tes questions s'y trouvent
https://java.developpez.com/livres-collaboratifs/javaenfants/
1
Jadur
 
Très bon cours en effet, j'ai commencé à apprendre Java avec ce cours, et aussi quand j'avais du mal avec une notion il y à tout un tas de réponses dans la FAQ Java : http://java.developpez.com/faq/
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Bonjour,

"J'aimerais savoir si le java fonctionne dans plusieurs environnements"
Qu'est-ce que tu entends par environnement ?
Java est multiplate-forme, il tourne sous Windows, Linux, Mac, que ce soit côté client ou serveur, mais également sur des périphériques embarqués (téléphones portables, GPS...)

"as t'il été conçu pour effectuer des calculs mathématiques."
Il n'a pas été conçu expressément pour cela, mais il est suffisamment complet pour pouvoir le faire sans problème.

"Qu'est-ce que vient faire static dans une déclaration d'une méthode ou d'un attribut?"
Une classe permet de construire des objets, les méthodes et attributs permettent de manipuler ces objets, mais si on ne veut pas travailler sur un objet en particulier mais sur la classe, on utilise le mot clé static. Cela permet d'avoir un comportement commun qui s'applique à aucun objet en particulier, mais à tous en même temps.
0
ElementW Messages postés 5690 Statut Contributeur 1 224
 
un comportement commun qui s'applique à aucun objet en particulier, mais à tous en même temps
Peut-être faudrait-il préciser que par "tous" tu ne veut pas dire "toutes les instances"?
0
KX Messages postés 19031 Statut Modérateur 3 020 > ElementW Messages postés 5690 Statut Contributeur
 
tu ne veut pas dire "toutes les instances"?
Je précise alors :
Un attribut static est lié à la classe (l'objet "unique" de type Class), pas aux objets instanciés par cette classe. Donc une modification de l'attribut n'impacte directement que l'objet Class, mais ne modifie aucun objet de cette classe.

L'exemple le plus simple pour comprendre le fonctionnement du mot clé static c'est d'utiliser un attribut static qui compte le nombre d'objets de cette classe.

public class Toto {
    private static int nb = 0;
    private final int id = nb++;

    public int getId() {
        return id;
    }

    public static int getNb() {
        return nb;
    }
}

Dans cet exemple tout les objets Toto auront un id différent, nb permet de savoir combien d'objets Toto ont été créé, cette information n'est pas gérée par les objets Toto mais par la classe.
0