Dépot Copyright

 CopyrightFrance.com

Cours Python

  1. Introduction à Python
  2. Ide Python
  3. Premier programme Python
  4. Les variables en Python
  5. Les commentaires en Python
  6. Les opérateurs Python
  7. Les fonctions en Python
  8. Structure If else... Python
  9. For While Python
  10. Formatage des chaines Python
  11. Les listes en Python
  12. Les tuples en Python
  13. Les dictionnaires en Python
  14. Les ensembles en Python
  15. POO et classes en Python
  16. Héritage en Python
  17. Le gestionnaire des packages pip
  18. Télécharger le cours complet
  19. Les modules en Python
  20. Le module OS
  21. Le module Platform
  22. Les exceptions en Python
  23. Les fichiers en Python
  24. Les fichiers ouverture & lecture
  25. Les fichiers ouverture & écriture
  26. Les fichiers CSV en Python
  27. Les Fichiers JSON En Python
  28. Fichier de configuration .ini
  29. Python & SQLite database
  30. DB Browser for SQLite
  31. Interface Graphique Tkinter
  32. Les Windgets Tkinter
  33. Bibliothèque d'images PILLOW
  34. Module de style tkinter.ttk
  35. Liste déroulante ttk Combobox
  36. le module filedialog
  37. Projet: Création éditeur de texte
  38. Bibliothèque graphique wxPython
  39. Bibliothèque graphique PyQt5
  40. Télécharger le cours complet
  41. Le module Math
  42. La bibliothèque matplotlib
  43. Le module Python statistics
  44. Bibliothèque Sympy
  45. Bibliothèques Numpy
  46. Bibliothèques Scipy
  47. Bibliothèques Pandas
  48. Bibliothèques Scikit Learn
  49. Bibliothèques TensorFlow
  50. Python Machine Learning
  51. Introduction à Django
  52. Installation de Django
  53. Premier Projet Django
  54. Interface administrateur
  55. Créer une application django
  56. Les modèles de django
  57. Exercices Python: les bases
  58. Exercices Python: les classes
  59. Exercices Python: les fichiers
  60. Tous les TP Python
  61. Création Editeur de Texte en Python Partie1
  62. Carnet d'adresse en Python
  63. Formation Python-partie1

Utilisateurs en ligne

Users: 33 Guests, 3 Bots

Nous somme sur Facebook

Annonces Google

1 – Introduction

L’héritage en Java est un  processus dans lequel une classe acquiert les propriétés (attributs et méthodes ) d’une autre classe Java. Avec l’utilisation de l’héritage, les données et informations sont gérés dans un ordre hiérarchique bien organisé et structuré.
La classe qui hérite des propriétés d’une autre classe  est appelée sous-classe (classe dérivée ou  classe fille) et la classe dont les propriétés sont héritées est appelée superclasse (classe de base, classe parente, classe mère…).
La déclaration d’une sous classe se fait à l’aide  du mot clé Extends
Extends est le mot clé utilisé pour hériter des propriétés d’une classe.
Syntaxe

class mère {

    ....

}

class fille extends mère {
   .....

}

2 – Héritage Java : étude d’exemple

Pour bien comprendre l’héritage Java, nous allons traiter un exemple simple d’une classe être humain et d’une sous classe Employé

La classe être humain est dotée des attributs :

  • nom
  • age
  • adresse

Un employé est aussi un être humain et par suite la sous classe employé hérite les mêmes propriétés nom, age, adresse… de la classe mère être humain , néanmoins la classe fille employé possède d’autres attributs inexistants chez la classe mère comme salaire, grade…

 Java Object Oriented Java - Inheritance Java - Overriding Java - Polymorphism Java - Abstraction Java - Encapsulation Java - Interfaces Java - Packages Inheritance can be defined as the process where one class acquires the properties (methods and fields) of another. With the use of inheritance the information is made manageable in a hierarchical order.

Remarque :

L’héritage d’un attribut se fait grâce au mot clé super

Exemple ( classe mère )

package etreHumain;

public class Humain {
	public String nom;
	public Humain(String n){
		this.nom=n;
	}
}

Exemple ( classe fille )

package etreHumain;

class Employé extends Humain{
	public int salaire;

	public Employé(String nm, int sal) {
		super(nm);
     this.salaire=sal;
	}
public static void main(String[] args) {
Employé enseignant=new Employé("Robert",3500);
System.out.println("Le nom de l'enseignant  est " + enseignant.nom);
System.out.println("Salaire de l'enseignant: " + enseignant.salaire +" Euro");
	}
}

Ce qui affiche après exécution :

Le nom de l’enseignant  est Robert
Le salaire de l’enseignant est  3500 Euro

3 – Polymorphisme en Java

Dans le paragraphe précédent , nous avons parlé de superclasses et de sous-classes. Si une classe hérite d’une méthode de sa superclasse, alors il y a une chance de reformuler  la méthode à condition qu’il n’est pas marqué final.
L’avantage de la substitution est la capacité de définir un comportement spécifique au type de sous-classe, ce qui signifie qu’une sous-classe peut implémenter une méthode de classe parent en fonction de son besoin et ses exigences.

Exemple

public class Animal {
	   public void seDeplacer() {
	      System.out.println("Un animal peut se déplacer");
	   }
	}

	class Chien extends Animal {
	   public void seDeplacer() {
	      System.out.println("Un chien peut courir");
	   }
	}

	class Oiseau  extends Animal {
		   public void seDeplacer() {
		      System.out.println("Un oiseau peut voler");
		   }
		}

Et pour exécuter le code de cette classe nous aurons besoin d’une autre classe doté d’une méthode static void main()

public class ExecutionAnimal {

		   public static void main(String args[]) {
		      Animal a = new Animal();  
		      Animal b = new Chien();
		      Animal c= new Oiseau();
		      
		      a.seDeplacer();   
		      b.seDeplacer();   
		      c.seDeplacer();

Ce qui affiche après exécution sur Eclipse :

Un animal peut se déplacer
Un chien peut courir
Un oiseau peut voler

4 – Usage de l’annotation @Override ( reformuler une méthode Java )

L’annotation @Override est utilisée en Java pour reformuler une méthode dans le cas du polymorphisme Java. Si la formule en question ne redéfinit pas une autre dans la classe mère, le compilateur signale une erreur !

Exemple

class Parent {
	
	void aficher(){
		System.out.println("C'est la méthode de la classe Parent ");
	}
}
	
	class Enfant extends Parent{
		
		@Override
		void afficher(){
		System.out.println("C'est la méthode de la classe Enfant ");	
		}
	}

@Override  indique ici au compilateur que la classe Enfant utilise la méthode affcher() de la classe Parent mais avec modification : au lieu d’afficher le message : C’est la méthode de la classe Parent  elle doit afficher un autre qui est propre à la classe Enfant  : C’est la méthode de la classe Enfant.

Certainement vous n’avez pas pu comprendre réellement l’avantage et l’effet de cette annotation !

Comme nous l’avons déjà mentionné ci-dessus : Si la formule en question ne redéfinit pas une autre dans la classe mère, le compilateur signale une erreur !. Amusons nous par exemple faire une petite modification sur le nom de la formule en question :

Essayons à titre d’exemple de remplacer la méthode afficher() dans la classe Enfant par afiche();

Marker annotations: we also speak of standard annotations. These are placed markers that allow the compiler to do or not to do certain actions. These include @Override, @Deprecated, @SuppressWarning ... The annotations parameterized: these are annotations that take a parameter in order to be able to function. We'll see the annotation @Retention (RetentionPolicy.RUNTIME); Multiparametric annotations: these take several parameters. The Java language already offers annotations of these three types that you can use in your programs.

 

Younes Derfoufi
CRMEF OUJDA

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Time limit is exhausted. Please reload the CAPTCHA.