0% ont trouvé ce document utile (0 vote)
112 vues45 pages

Cours Complet de Programmation Java

Ce document présente un cours d'initiation à la programmation orientée objet avec le langage Java, destiné aux élèves de 3ème EA. Il couvre les concepts fondamentaux de la POO, tels que les classes, les objets, l'héritage, et les interfaces, tout en introduisant les bases du langage Java et son environnement de développement. L'objectif est d'apprendre à concevoir et manipuler des objets, ainsi qu'à résoudre des problèmes à l'aide de la POO.

Transféré par

Chaiima Daghmoura
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)
112 vues45 pages

Cours Complet de Programmation Java

Ce document présente un cours d'initiation à la programmation orientée objet avec le langage Java, destiné aux élèves de 3ème EA. Il couvre les concepts fondamentaux de la POO, tels que les classes, les objets, l'héritage, et les interfaces, tout en introduisant les bases du langage Java et son environnement de développement. L'objectif est d'apprendre à concevoir et manipuler des objets, ainsi qu'à résoudre des problèmes à l'aide de la POO.

Transféré par

Chaiima Daghmoura
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

INITIATION À LA

PROGRAMMATION
ORIENTÉE-OBJET AVEC
LE LANGAGE JAVA
Au profit des classes 3eme EA

Présenté par Mahbouba Hattab


2024-2025
Objectifs du Cours

Apprendre à concevoir,
créer et manipuler des
objets en programmation.

Acquérir des compétences


Introduction au
de base en résolution de Familiarisation avec les
langage Java problèmes avec la POO. concepts clés tels que les
classes, les objets,
Comprendre les
l'encapsulation, l'héritage et
principes fondamentaux le polymorphisme.
de la programmation
orientée objet. Préparation à des concepts
plus avancés en POO.
PLAN
Introduction au langage Java
Syntaxe du langage
Éléments de programmation Java
Concepts POO en Java
Héritage
Les exceptions
Les Interfaces...
Qu’est-ce que Java ?

Java est un langage de programmation populaire, créé en 1995.


Il appartient à Oracle (Sun Microsystems )et plus de 3 milliards
d’appareils utilisent Java.

Il est utilisé pour :


Applications mobiles (spécialement les applications Android)
Applications Desktop
Applications Web
Serveurs Web et serveurs d’applications
Jeux
Connexion à la base de données
...
Qu’est-ce que Java ?

Pourquoi utiliser Java ?


Java fonctionne sur différentes plateformes (Windows, Mac, Linux, Raspberry Pi, etc.)
C’est l’un des langages de programmation très populaires au monde(Il a un énorme
community support (des dizaines de millions de développeurs))
Il est facile à apprendre et simple à utiliser
Il est open-source et gratuit
Il est sécurisé, rapide et puissant( java apps lentes à l’exécution % C)
Java est un langage orienté objet qui donne une structure claire aux programmes et
permet de réutiliser le code, réduisant ainsi les coûts de développement
Environnement Java
JDK
Le JDK, ou Java Development Kit, est un ensemble de logiciels et d'outils nécessaires au
développement d'applications en langage de programmation Java. IL comprend plusieurs
composants essentiels
Le compilateur Java (javac) : traduire le code source Java en bytecode, un langage
intermédiaire compréhensible par la JVM.
La machine virtuelle Java (JVM) : Elle est responsable de l'exécution du bytecode Java sur
différentes plates-formes, ce qui permet aux applications Java d'être portables .
Les bibliothèques Java standard (Java Standard Library) : contiennent des classes et
méthodes pré-définies qui simplifient le développement d'applications Java telles que la
gestion des chaînes de caractères, les entrées/sorties, les collections, etc.
Environnement Java
JDK
Environnement Java
Java Quickstart

En Java, chaque application commence par un nom de classe, et cette classe doit
correspondre au nom de fichier.

Chaque ligne de code qui s’exécute en Java doit


être à l’intérieur d’une classe. Dans notre exemple,
nous avons nommé la classe Main. Une classe doit
toujours commencer par une première lettre
majuscule.
Note : Java est sensible à la casse : "MyClass" et
"myclass" ont une signification différente.
Les Variables Java
Les variables sont des conteneurs pour stocker des valeurs de données.
Les types de données sont divisés en deux groupes :
Types de données primitifs - inclut byte(1), short(2), int(4,) long(8), float(4), double,(8) booléen
et char(2)
Types de données non primitifs - tels que String, Tableaux et Classes
Types de données primitifs :
Chaîne - stocke le texte, tel que "Bonjour".
int - tels que 123 ou -123
float - telles que 19,99 ou -19,99
char - tels que 'a' ou 'B'.
boolean - stocke les valeurs avec deux états : vrai ou faux
Les Variables Java

Variables finales
Si vous ne voulez pas que les autres (ou vous-même) écrasent des valeurs existantes,
utilisez le mot-clé final (qui déclarera la variable « final » ou « constant », ce qui signifie
immuable et en lecture seule) :
Les Variables Java

Tableaux et matrices
Une variable est déclarée comme un tableau dès lors que des crochets sont
présents soit après son type, soit après son identificateur

Un tableau a toujours une taille fixe qui doit être précisée avant l’affectation de
valeurs à ses indices, de la manière suivante :
Les Variables Java

Chaînes de caractères
Pour Les chaînes de caractères On utilise une classe particulière, String, fournie dans le
package [Link] avec les caractéristiques suivantes :
leur valeur ne peut pas être modifiée
on peut utiliser l’opérateur + pour concaténer deux chaînes de caractères :
Structures de contrôle

Instructions conditionnelles

Exemple
Structures de contrôle

Instructions itératives
Structures de contrôle

Instructions break et continue


L’instruction break est utilisée pour sortir
immédiatement d’un bloc d’instructions (sans traiter
les instructions restantes dans ce bloc).
break : l’exécution se poursuit après la boucle
(comme si la condition d’arrêt devenait vraie) ;
continue : l’exécution du bloc est arrêtée mais pas
celle de la boucle. Une nouvelle itération du bloc
commence si la condition d’arrêt est toujours vraie.
Les Méthodes Java

Une méthode est un bloc de code qui ne s’exécute que lorsqu’elle est appelée.
Nous pouvons passer des paramètres, dans une méthode.
Les méthodes sont utilisées pour effectuer certaines actions, et elles sont
également appelées fonctions.
Pourquoi utiliser des méthodes ? Pour réutiliser du code : définissez le code une
fois et utilisez-le plusieurs fois.
Les Méthodes Java
Programmation
orientés objet (OO).

Les langages de programmation peuvent être classés en deux catégories principales : les
langages de programmation procéduraux et les langages de programmation orientés
objet (OO).
Langages de programmation procéduraux : sont basés sur le concept de la
programmation procédurale, où un programme est structuré en termes de procédures
ou de fonctions. le code est généralement organisé en séquences d'instructions, et les
données sont stockées dans des variables.
L'accent est mis sur les procédures (fonctions) qui effectuent des tâches spécifiques
sur les données. Exemples C, Pascal, Fortran.
Programmation
orientés objet (OO).

Langages de programmation orientés objet (OO) : sont basés sur le principe où les
programmes sont structurés autour d'objets.
le code est organisé en classes et objets. Les classes définissent la structure et le
comportement des objets, tandis que les objets sont des instances de ces classes.
Les concepts clés de la programmation orientée objet incluent l'encapsulation,
l'héritage et le polymorphisme.
L'accent est mis sur la modélisation du monde réel en termes d'objets et de leurs
interactions.
Exemples de langages de programmation orientés objet : Java, C++, Python, Ruby.
Programmation
orientés objet (OO).

La programmation procédurale se concentre sur les procédures et les fonctions,

tandis que la programmation orientée objet se concentre sur les objets et leurs

relations.

Dans la programmation procédurale, les données et les fonctions sont souvent

séparées, tandis que dans la programmation orientée objet, les données et les

fonctions qui les manipulent sont encapsulées dans des objets.


Programmation
orientés objet (OO).

OOP est plus rapide et plus facile à exécuter

OOP fournit une structure claire pour les programmes

OOP aide à garder le code Java DRY "Don’t Repeat Yourself", et rend le code plus

facile à maintenir, modifier et déboguer

OOP permet de créer des applications réutilisables complètes avec moins de code

et un temps de développement plus court


Programmation
orientés objet avec
JAVA.

Java est un langage orienté objet car il est modélisé et organisé autour d’objets

plutôt que d’actions; et de données plutôt que de logique. Il simplifie le

développement et la maintenance de logiciels en fournissant des fonctionnalités

très intrigantes. La programmation orientée objet en Java vise à implémenter des

entités du monde réel telles que les objets, les classes, l’abstraction, l’héritage, le

polymorphisme et bien d’autres.


Programmation
orientés objet avec
JAVA.
Java - Que sont les
Classes et les Objets?

En programmation orientée objet (POO) en Java, une classe est un modèle ou un plan pour

créer des objets, tandis qu'un objet est une instance spécifique d'une classe. Une classe

définit les caractéristiques (attributs) et les comportements (méthodes) que les objets de

cette classe auront. Une classe est essentiellement une définition abstraite.
Java - Que sont les
Classes et les Objets?

Un objet est une instance concrète d'une classe. Il est créé en utilisant le constructeur de

la classe. Chaque objet a ses propres valeurs d'attributs, mais partage les mêmes

méthodes définies dans la classe. Les objets sont utilisés pour représenter des entités

réelles ou abstraites dans votre programme.


Java - Que sont les
Classes et les Objets?
Classes & Objects

Une classe Java est un plan qui inclut toutes vos données. Une classe contient des champs

(variables) et des méthodes pour décrire le comportement d’un objet.

Un objet est un élément majeur d’une classe qui a un état et un comportement. C’est une

instance d’une classe qui peut accéder à vos données. Le mot-clé « new » est utilisé pour

créer l’objet.
Java Constructors

Un constructeur est un bloc de code qui initialise un objet nouvellement créé. Il est similaire à une

méthode en Java mais n’a pas de type de retour et son nom est le même que le nom de la classe. Il

existe 2 types de constructeurs :

[Link] par défaut

(constructeur sans argument)

[Link] paramétré
Modificateurs en Java

En Java, les modificateurs sont des mots-clés utilisés pour spécifier la visibilité, l'accès et d'autres

caractéristiques des classes, des méthodes, des variables et des membres. Les modificateurs sont

essentiels pour définir l'encapsulation et le contrôle d'accès dans un programme Java. Voici

quelques-uns des modificateurs les plus couramment utilisés en Java :


Modificateurs en Java

Modificateurs d'accès (Access Modifiers) :

public: Les éléments avec ce modificateur sont accessibles depuis n'importe où dans le

code.

protected: Les éléments sont accessibles dans la même classe, dans les sous-classes

(héritage), et dans le même package.

default (ou pas de modificateur) : Les éléments sont accessibles uniquement dans la même

classe et dans le même package.

private: Les éléments sont accessibles uniquement dans la même classe.


Modificateurs en Java

Modificateurs de variable :

final: Indique que la variable est une constante et ne peut pas être réaffectée.

static: Indique que la variable est partagée par toutes les instances de la classe plutôt que

d'appartenir à une instance particulière.


Modificateurs en Java

Modificateurs d'accès (Access Modifiers) :


Modificateurs en Java

Modificateurs de classe :

final: Indique que la classe ne peut pas être héritée (sous-classement interdit).

abstract: Indique que la classe est une classe abstraite, ce qui signifie qu'elle ne peut pas

être instanciée directement.


Modificateurs en Java

Modificateurs de méthode :

final: Indique que la méthode ne peut pas être redéfinie dans les sous-classes.

static: Indique que la méthode appartient à la classe plutôt qu'à une instance de la

classe.

abstract: Indique que la méthode n'a pas de corps (implémentation) dans la classe

actuelle et doit être définie dans les sous-classes abstraites.

synchronized: Utilisé pour la synchronisation de threads.

native: Indique que la méthode est implémentée dans une bibliothèque native (non Java).
L’heritage

La notion de l‘héritage dans la programmation orienté objet :

L'héritage est l'un des concepts fondamentaux de la programmation orientée objet (POO).

Il s'agit d'un mécanisme qui permet à une classe d'hériter des caractéristiques (attributs

et méthodes) d'une autre classe, appelée classe parent ou classe de base. La classe qui

hérite de ces caractéristiques est appelée classe fille ou classe dérivée. L'héritage permet

de créer une hiérarchie de classes, ce qui facilite la réutilisation du code, la

généralisation des concepts et la structuration du programme.


L’heritage

Les points clés :

Relation parent-enfant : Une classe enfant peut hériter des propriétés d'une classe

parent. Cela signifie que la classe enfant a accès aux attributs et aux méthodes de la

classe parent.

Réutilisation du code : L'héritage favorise la réutilisation du code, car une classe peut

utiliser les fonctionnalités d'une autre classe sans avoir à les redéfinir. Cela permet de

créer des classes spécialisées qui étendent ou modifient le comportement d'une classe de

base.
L’heritage

Les points clés :

Polymorphisme : L'héritage contribue au polymorphisme, qui permet à des objets de

classes différentes de répondre de manière similaire à une même méthode. Par exemple,

une méthode définie dans la classe parent peut être redéfinie dans la classe enfant pour

adapter son comportement spécifique.

Encapsulation : L'héritage facilite l'encapsulation en permettant de définir des membres

de classe (attributs, méthodes) comme publics, protégés ou privés. Les membres protégés

sont accessibles par les classes dérivées, mais pas par les classes extérieures.
L’heritage

Les mots clés :

extends : Utilisé dans le contexte de l'héritage.

Lorsqu'une classe A extends une classe B, cela signifie que la classe A hérite de tous les

membres (attributs et méthodes) de la classe B.

La classe A est souvent appelée la classe dérivée ou sous-classe, et la classe B est

appelée la classe de base ou superclasse.


L’heritage

Les mots clés :

super : Utilisé pour appeler les membres (méthodes ou attributs) de la classe parente

(superclasse) depuis la classe fille (sous-classe).

Utile lorsque la sous-classe a des membres avec le même nom que ceux de la superclasse.

Peut également être utilisé pour appeler le constructeur de la superclasse dans le

constructeur de la sous-classe.
L’heritage

Les mots clés :

@Override : Une annotation utilisée pour indiquer explicitement qu'une méthode dans

une sous-classe est destinée à remplacer (ou "override") une méthode de la superclasse.

Facultatif mais recommandé pour une meilleure lisibilité du code.

Le compilateur générera une erreur si la méthode annotée n'override pas correctement

une méthode de la superclasse.


Les Interfaces

Definition :

En programmation orientée objet, une interface définit un ensemble de méthodes (fonctions) que les

classes qui implémentent cette interface doivent fournir. Lorsqu'une classe implémente une interface,

elle promet de fournir une certaine fonctionnalité sans révéler les détails internes de son

fonctionnement.

L'abstraction à travers les interfaces se fait en utilisant uniquement les méthodes définies dans

l'interface, sans se soucier de la manière dont ces méthodes sont mises en œuvre. Cela permet aux

développeurs de travailler à un niveau plus élevé, en utilisant des concepts abstraits plutôt que de se

plonger dans les détails spécifiques de l'implémentation.


Les Interfaces

En résumé, les interfaces fournissent un moyen de définir un contrat entre les différentes

parties d'un programme. Cela permet d'atteindre une abstraction efficace, car les détails

internes sont cachés derrière des méthodes déclarées dans l'interface, offrant ainsi une

manière simplifiée d'interagir avec des objets ou des composants logiciels sans se soucier

de la complexité interne.
Les Interfaces

Il n’y a pas d’héritage multiple en Java: une classe ne peut être extension qu’une seule

classe. Par contre une classe peut implémenter plusieurs interfaces (et être extension d’une

seule classe).

Une interface ne contient (essentiellement) que des déclarations de méthodes.

Une interface est un peu comme une classe sans données membres et dont toutes les

méthodes seraient abstraites.


Merci !

Vous aimerez peut-être aussi