Java est un langage à typage statique, ce qui signifie que le type d'une variable est connu au moment de la compilation. Affecter une valeur à un nom s'appelle définir une variable. Une variable se définit en spécifiant explicitement son type.
int explicitVar = 10;
La mise à jour de la valeur d'une variable se fait à l'aide de l'opérateur =.
Ici, = ne représente pas l'égalité mathématique.
Il affecte simplement une valeur à une variable.
Une fois définie, le type d'une variable ne peut plus jamais changer.
int count = 1; // Assign initial value
count = 2; // Update to new value
// Compiler error when assigning a different type
// count = false;
Java est un langage orienté objet et exige que toutes les fonctions soient définies dans une classe.
Le mot-clé class sert à définir une classe.
class Calculator {
// ...
}
Une fonction au sein d'une classe s'appelle une méthode.
Chaque méthode peut prendre zéro ou plusieurs paramètres.
Tous les paramètres doivent être typés explicitement ; il n'y a pas d'inférence de type pour les paramètres.
De même, le type de retour doit lui aussi être explicite.
Les valeurs sont renvoyées par les méthodes à l'aide du mot-clé return.
Pour qu'une méthode puisse être appelée par d'autres classes, il faut ajouter le modificateur d'accès public.
class Calculator {
public int add(int x, int y) {
return x + y;
}
}
Appeler une méthode se fait en précisant le nom de sa classe et de la méthode, et en passant des arguments pour chacun des paramètres de la méthode.
int sum = new Calculator().add(1, 2); // here the "add" method has been called to perform the task of addition
En Java, la portée est définie entre les caractères { et }.
Java prend en charge deux types de commentaires.
Les commentaires sur une seule ligne sont précédés de // et les commentaires multilignes s'insèrent entre /* et */.
Dans cet exercice, tu vas écrire du code pour t'aider à cuisiner de délicieuses lasagnes d'après ton livre de cuisine préféré.
Tu as quatre tâches, toutes liées au temps passé à cuisiner les lasagnes.
Définis la méthode expectedMinutesInOven() qui ne prend aucun paramètre et renvoie le nombre de minutes pendant lesquelles les lasagnes doivent rester au four. D'après le livre de cuisine, le temps de cuisson attendu est de 40 minutes :
Lasagna lasagna = new Lasagna();
lasagna.expectedMinutesInOven();
// => 40
Définis la méthode remainingMinutesInOven() qui prend en paramètre le nombre de minutes que les lasagnes ont déjà passées au four et renvoie le nombre de minutes qu'elles doivent encore y rester, d'après le temps de cuisson attendu de la tâche précédente.
Lasagna lasagna = new Lasagna();
lasagna.remainingMinutesInOven(30);
// => 10
Définis la méthode preparationTimeInMinutes() qui prend en paramètre le nombre de couches que tu as ajoutées aux lasagnes et renvoie le nombre de minutes que tu as passées à les préparer, en supposant que chaque couche te prenne 2 minutes.
Lasagna lasagna = new Lasagna();
lasagna.preparationTimeInMinutes(2);
// => 4
Définis la méthode totalTimeInMinutes() qui prend deux paramètres : le premier est le nombre de couches que tu as ajoutées aux lasagnes, et le second est le nombre de minutes que les lasagnes ont passées au four. La fonction doit renvoyer le nombre total de minutes que tu as consacrées à cuisiner les lasagnes, c'est-à-dire la somme du temps de préparation en minutes et du temps en minutes que les lasagnes ont déjà passé au four.
Lasagna lasagna = new Lasagna();
lasagna.totalTimeInMinutes(3, 20);
// => 26
Inscris-toi sur Exercism pour apprendre et maîtriser Java avec 26 concepts158 exercices, et un vrai mentorat humain, le tout gratuitement.