0% ont trouvé ce document utile (0 vote)
4 vues6 pages

Guide Java Debutant

Ce guide Java pour débutants présente les concepts fondamentaux du langage, y compris la structure d'un programme, les variables, les conditions, les boucles, les tableaux, les collections, et la programmation orientée objet. Il aborde également la gestion des exceptions, les fonctionnalités modernes de Java comme les lambdas et les streams, ainsi que les bonnes pratiques de développement. Enfin, il encourage l'apprentissage de design patterns et d'outils pour le développement Java.

Transféré par

estellewandji67
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
4 vues6 pages

Guide Java Debutant

Ce guide Java pour débutants présente les concepts fondamentaux du langage, y compris la structure d'un programme, les variables, les conditions, les boucles, les tableaux, les collections, et la programmation orientée objet. Il aborde également la gestion des exceptions, les fonctionnalités modernes de Java comme les lambdas et les streams, ainsi que les bonnes pratiques de développement. Enfin, il encourage l'apprentissage de design patterns et d'outils pour le développement Java.

Transféré par

estellewandji67
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Guide Java pour Debutants

Java est un langage oriente objet, fortement type, compile et portable. Il est utilise dans les applications
dentreprise, Android, et bien plus encore.

Prerequis : Installez le JDK (Java Development Kit) depuis [Link]. Pour compiler : javac
[Link] — Pour executer : java MonFichier

1. Structure dun Programme Java


// Tout programme Java doit avoir une classe
public class MonPremierProgramme {
public static void main(String[] args) {
[Link]("Bonjour, monde !");
[Link]("Formate : %s a %d ans%n", "Alice", 25);
}
}
// Fichier : [Link] (nom fichier = nom classe)

2. Variables et Types de Donnees


public class Variables {
public static void main(String[] args) {
// Types primitifs
int age = 25;
long pop = 8000000000L;
double taille = 1.75;
boolean actif = true;
char initiale = 'J';

// Chaines (objets)
String nom = "Dupont";
String prenom = "Jean";
String complet = prenom + " " + nom;

// var (inference de type, Java 10+)


var message = "Bonjour !";

// Constante
final double PI = 3.14159;

// Casting
double d = 9.99;
int i = (int) d; // 9 (troncature)
}
}
3. Conditions et Boucles
Conditions
int age = 20;

if (age >= 18) {


[Link]("Majeur");
} else if (age >= 13) {
[Link]("Adolescent");
} else {
[Link]("Enfant");
}

// Operateur ternaire
String statut = age >= 18 ? "majeur" : "mineur";

// Switch expression (Java 14+)


String jour = "LUNDI";
String type = switch (jour) {
case "LUNDI", "MARDI", "MERCREDI", "JEUDI", "VENDREDI" -> "Jour ouvre";
case "SAMEDI", "DIMANCHE" -> "Week-end";
default -> "Inconnu";
};

Boucles
// Boucle for classique
for (int i = 0; i < 5; i++) {
[Link](i);
}

// Boucle while
int compteur = 0;
while (compteur < 5) {
[Link](compteur);
compteur++;
}

// For-each (tableaux et collections)


String[] fruits = {"pomme", "banane", "cerise"};
for (String fruit : fruits) {
[Link](fruit);
}

// break et continue
for (int i = 0; i < 10; i++) {
if (i == 5) break;
if (i % 2 == 0) continue;
[Link](i); // 1, 3
}

4. Tableaux et Collections
Tableaux
int[] nombres = {1, 2, 3, 4, 5};
int[] autresNombres = new int[5];
[Link](nombres[0]); // 1
[Link]([Link]); // 5

// Tableau 2D
int[][] matrice = {{1,2,3},{4,5,6},{7,8,9}};
[Link](matrice[1][2]); // 6

Collections ([Link])
import [Link];
import [Link];
import [Link];
import [Link];

// ArrayList (liste dynamique)


List<String> fruits = new ArrayList<>();
[Link]("pomme");
[Link]("banane");
[Link]("banane");
[Link]([Link](0)); // pomme
[Link]([Link]()); // 1
[Link]([Link]("pomme")); // true

// HashMap (cle-valeur)
Map<String, Integer> ages = new HashMap<>();
[Link]("Alice", 25);
[Link]("Bob", 30);
[Link]([Link]("Alice")); // 25

// Parcourir une Map


for ([Link]<String, Integer> entry : [Link]()) {
[Link]([Link]() + " : " + [Link]());
}

5. Classes et Programmation Orientee Objet


public class Voiture {
private String marque;
private String modele;
private int annee;
private double kilometrage;

public Voiture(String marque, String modele, int annee) {


[Link] = marque;
[Link] = modele;
[Link] = annee;
[Link] = 0;
}

public String getMarque() { return marque; }


public double getKilometrage() { return kilometrage; }
public void rouler(double km) {
if (km > 0) [Link] += km;
}

@Override
public String toString() {
return marque + " " + modele + " (" + annee + ")";
}
}

// Heritage
public class VoitureElectrique extends Voiture {
private int autonomie;

public VoitureElectrique(String marque, String modele, int annee, int autonomie) {


super(marque, modele, annee);
[Link] = autonomie;
}

public void recharger() { [Link]("Batterie rechargee !"); }


}

// Interface
public interface Assurable {
double calculerPrime(); // A implementer

default String getType() {


return "Assurance standard";
}
}

// Utilisation
Voiture v = new Voiture("Renault", "Clio", 2022);
[Link](150.5);
[Link](v);

6. Gestion des Exceptions


try {
int resultat = 10 / 0;
} catch (ArithmeticException e) {
[Link]("Erreur : " + [Link]());
} catch (Exception e) {
[Link]("Erreur generale : " + [Link]());
} finally {
[Link]("Ce bloc sexecute toujours");
}

// Lever une exception


public void setAge(int age) {
if (age < 0 || age > 150)
throw new IllegalArgumentException("Age invalide : " + age);
[Link] = age;
}
// try-with-resources
try (BufferedReader br = new BufferedReader(new FileReader("[Link]"))) {
String ligne;
while ((ligne = [Link]()) != null) {
[Link](ligne);
}
} catch (IOException e) {
[Link]();
}

7. Java Moderne (Java 8+)


Lambda et Streams
import [Link].*;
import [Link].*;

List<String> noms = [Link]("Alice", "Bob", "Charlie", "Diana");

// Lambda
[Link](nom -> [Link](nom));

// Streams
List<String> nomsLongs = [Link]()
.filter(n -> [Link]() > 4)
.map(String::toUpperCase)
.sorted()
.collect([Link]());

// Optional (evite les NullPointerException)


Optional<String> optNom = [Link](getNom());
String nom = [Link]("Inconnu");
[Link](n -> [Link]("Bonjour " + n));

Records et Enum
// Record (Java 16+) : classe immuable auto-generee
public record Point(int x, int y) {}

Point p = new Point(3, 4);


[Link](p.x()); // 3
[Link](p); // Point[x=3, y=4]

// Enum
public enum Couleur { ROUGE, VERT, BLEU }
Couleur c = [Link];

8. Bonnes Pratiques Java


Nommage : variables/methodes en camelCase, classes en PascalCase, constantes en
SCREAMING_SNAKE_CASE

Encapsulation : attributs toujours private, acces via getters/setters


Outils : Maven ou Gradle pour les dependances, IntelliJ IDEA ou Eclipse comme IDE, JUnit 5 pour les
tests

Annotations importantes : @Override, @Deprecated, @FunctionalInterface, @Nullable

Prochaines etapes : Apprenez les Design Patterns (Singleton, Factory, Builder...), les tests avec JUnit 5, la
gestion de build avec Maven, puis explorez Spring Boot pour le developpement web !

Vous aimerez peut-être aussi