Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

abstraction en Java | Classe et méthode abstraites avec exemple

Qu'est-ce que l'abstraction en Java ?

Abstraction en JAVA affiche uniquement les attributs essentiels et masque les détails inutiles de l'objet à l'utilisateur. En Java, l'abstraction est réalisée à l'aide de la classe abstraite, des méthodes abstraites et des interfaces. L'abstraction aide à réduire la complexité et les efforts de programmation.

Dans ce tutoriel, vous apprendrez-

Qu'est-ce qu'une classe abstraite ?

CLASSE ABSTRAITE est un type de classe en Java, qui déclare une ou plusieurs méthodes abstraites. Ces classes peuvent avoir des méthodes abstraites ainsi que des méthodes concrètes. Une classe normale ne peut pas avoir de méthodes abstraites. Une classe abstraite est une classe qui contient au moins une méthode abstraite. Nous pouvons comprendre le concept par l'exemple de forme en Java .

Considérez la hiérarchie de classes suivante composée d'une classe Shape qui est héritée par trois classes Rectangle, Circle et Triangle. La classe Shape est créée pour économiser sur les attributs et méthodes communs partagés par les trois classes Rectangle, Circle et Triangle. calculateArea() est l'une de ces méthodes partagée par les trois classes enfants et présente dans la classe Shape.

Supposons maintenant que vous écriviez du code pour créer des objets pour les classes décrites ci-dessus. Observons à quoi ressembleront ces objets dans un monde pratique.

Un objet de la classe rectangle donnera un rectangle, une forme que nous observons si souvent dans la vie de tous les jours.

Un objet de la classe triangle donnera un triangle, encore une fois une forme courante de tous les jours.

Mais à quoi ressemblerait un objet de Class Shape dans un monde pratique ??

Si vous observez que la classe Shape sert dans notre objectif d'obtenir l'héritage et le polymorphisme. Mais il n'a pas été conçu pour être instancié. Ces classes peuvent être étiquetées Résumé . Une classe Java abstraite ne peut pas être instanciée.

Syntaxe :

abstract class Shape{
	// code
}

Il est possible que vous n'étiquetiez PAS la classe Shape comme abstraite, puis que vous l'instanciiez. Mais un tel objet n'aura aucune utilité dans votre code et ouvrira une porte à des erreurs potentielles. Ce n'est donc pas souhaitable.

Que sont les méthodes abstraites ?

MÉTHODE ABSTRAITE en Java, est une méthode qui n'a que la définition de la méthode mais ne contient pas d'implémentation. Une méthode sans corps est appelée méthode abstraite. Il doit être déclaré dans une classe abstraite. La méthode abstraite ne sera jamais finale car la classe abstraite doit implémenter toutes les méthodes abstraites.

Comme nous le savons tous, la formule de calcul de l'aire du rectangle, du cercle et du triangle est différente. La méthode calculateArea() devra être surchargée par les classes qui héritent. Cela n'a aucun sens de le définir dans la classe Shape, mais nous devons nous assurer que toutes les classes qui héritent ont bien la méthode.

Ces méthodes peuvent être étiquetées abstraites.

Syntaxe :

abstract public void calculateArea();

Pour une méthode abstraite, aucune implémentation n'est requise. Seule la signature de la méthode est définie.

Exemple de code d'abstraction

abstract class Shape{  
  abstract void calculateArea();  
}  
 class guru99 extends Shape{  
void calculateArea(){System.out.println("Area of Shape");}  
public static void main(String args[]){  
 Shape obj = new guru99();  
 obj.calculateArea();
}  
}

Classe abstraite en Java :points importants

Mot clé final en Java

Le modificateur final s'applique aux classes, aux méthodes et aux variables. La signification de final varie d'un contexte à l'autre, mais l'idée essentielle est la même.

Exemple :- Pour apprendre les mots-clés abstraits et finaux

Étape 1) Copiez le code suivant dans un éditeur.

abstract class Shape{
   final int b = 20;
   public void display(){
     System.out.println("This is display method");
   }
   abstract public void calculateArea();
}

public class Rectangle extends Shape{
   public static void main(String args[]){
      Rectangle obj = new Rectangle();
      obj.display();
     //obj.b=200;
  }
  //public void calculateArea(){}
}

Étape 2) Enregistrez, compilez et exécutez le code.

Étape 3) Erreur = ? La méthode abstraite n'est pas implémentée dans la classe Rectangle. Pour résoudre le problème, décommentez la ligne 15.

Étape 4) Décommentez la ligne # 13 . Enregistrez et compilez le code.

Étape 5) Erreur = ? la variable b est finale

Règles de la méthode abstraite


Java

  1. Classe abstraite et méthode C#
  2. Classe abstraite Java et méthodes abstraites
  3. Tutoriel de classe abstraite C # avec exemple :Qu'est-ce que l'abstraction ?
  4. Méthode String Length () en Java:comment trouver avec l'exemple
  5. Méthode Java String charAt() avec exemple
  6. Méthode Java String contains() | Vérifier la sous-chaîne avec l'exemple
  7. Méthode Java String endsWith () avec exemple
  8. Interface vs classe abstraite en Java :quelle est la différence ?
  9. Java BufferedReader :comment lire un fichier en Java avec un exemple