Maison > Java > javaDidacticiel > Messages, agrégats et classes abstraites en Java

Messages, agrégats et classes abstraites en Java

WBOY
Libérer: 2023-08-24 08:29:11
avant
1064 Les gens l'ont consulté

Messages, agrégats et classes abstraites en Java

Dans la pratique contemporaine de la programmation informatique, il est courant d'utiliser les systèmes de programmation orientés objet (OOPS) comme base des langages de programmation. Ce paradigme combine des méthodes et des données pour produire des résultats bénéfiques pour les développeurs. L'adoption d'OOPS permet aux programmeurs de créer un modèle de classe et d'objet précis qui permet un travail transparent en reproduisant efficacement des scénarios réels.

Dans cet article, découvrez les messages, les agrégats et les classes abstraites dans le paradigme OOPS.

Qu'est-ce qu'un message ?

Dans le domaine informatique, la messagerie fait référence à la communication entre les processus. La transmission de données est une méthode de communication efficace dans les pratiques de programmation parallèle et de programmation orientée objet. Lorsque vous utilisez Java, l'envoi de messages sur différents threads est étroitement lié au processus de partage d'objets ou de messages. Contrairement aux moniteurs partagés, aux sémaphores ou à des variables similaires, cette approche peut être utile sans barrière possible à l'interaction des threads sans mécanisme de stockage coopératif. Les méthodes de messagerie peuvent être exécutées dans la programmation orientée objet via des constructeurs, des méthodes ou en envoyant diverses valeurs.

Les principaux avantages de la technologie de transfert de messages sont les suivants :

  • Par rapport au mode mémoire partagée, la mise en œuvre de ce mode est beaucoup plus simple.

  • Parce que cette méthode a une tolérance élevée pour une latence de connexion plus élevée.

  • Le processus de mise en œuvre de cela en tant que matériel parallèle est beaucoup plus simple.

Grammaire

public class MessagePassing {
   // body
}
Copier après la connexion

Exemple

// Java program to demonstrate message passing by value

import java.io.*;
public class MessagePassing {
   void displayInt(int x, int y) {
      int z = x + y;
      System.out.println("Int Value is : " + z);
   }

   void displayFloat(float x, float y) {
      float z = x * y;
      System.out.println("Float Value is : " + z);
   }
}
class Variable {

   public static void main(String[] args) {
      MessagePassing mp= new MessagePassing();
      mp.displayInt(1, 100);
      mp.displayFloat((float)3, (float)6.9);
   }
}
Copier après la connexion

Sortie

Int value is : 101
Float value is : 20.7
Copier après la connexion

Qu'est-ce que l'agrégation ?

Dans un sens unique, il s'agit d'un type d'association. L'agrégation est une relation dirigée à sens unique qui exprime avec précision la relation HAS-A entre les classes. De plus, lorsque deux classes sont regroupées, la suppression de l’une n’a aucun effet sur l’autre. Elle est souvent désignée comme une relation faible par rapport à la combinaison. En revanche, la classe parent possède les entités enfants, ce qui signifie que les entités enfants ne sont pas accessibles directement et ne peuvent pas exister sans l'objet parent. En revanche, dans une association, les entités parent et enfant peuvent exister indépendamment.

Grammaire

class Employee {
   int id;
   String name;
   Address address;   // Aggregation
   // body
}
Copier après la connexion

Exemple

// Java program to demonstrate an aggregation

public class Address {
   int strNum;
   String city;
   String state;
   String country;

   Address(int street, String c, String st, String count) {
      this.strNum = street;
      this.city = c;
      this.state = st;
      this.country = coun;
   }
}
class Student {
   int rno;
   String stName;

   Address stAddr;
   Student(int roll, String name,
      Address address)
   {
      this.rno = roll;
      this.stName = name;
      this.stAddr = address;
   }
}

class Variable {
   public static void main(String args[]) {

      Address ad= new Address(10, "Bareilly", "UP", "India");
      Student st= new Student(1, "Aashi", ad);
      System.out.println("Roll no: "+ st.rno);
      System.out.println("Name: "+ st.stName);
      System.out.println("Street: "+ st.stAddr.strNum);
      System.out.println("City: "+ st.stAddr.city);
      System.out.println("State: "+ st.stAddr.state);
      System.out.println("Country: "+ st.stAddr.country);
   }
}
Copier après la connexion

Sortie

Roll no: 1
Name: Aashi
Street: 10
City: Bareilly
State: UP
Country: India
Copier après la connexion

Qu'est-ce qu'un cours abstrait ?

L'abstraction est une méthode utilisée dans le paradigme de programmation orientée objet pour réduire la complexité du programme et les efforts de compréhension en affichant à l'utilisateur uniquement les informations pertinentes au lieu des informations non pertinentes à l'écran. Bien que l'implémentation diffère, l'idée de masquer les données inutiles est la même dans chaque langage dans lequel un système de programmation orienté objet est implémenté. Une technique pour réaliser l’abstraction en Java consiste à utiliser des classes abstraites. Java permet de déclarer des méthodes abstraites et régulières dans une classe, mais les méthodes abstraites ne peuvent pas être exprimées dans des classes régulières. Les classes abstraites sont soit définies, soit implémentées par des classes d'extension.

Grammaire

abstract class A{}
Copier après la connexion

Exemple

// Java program to demonstrate the abstract class

abstract class Car {

   public void details() {
      System.out.println("Manufacturing Year: 123");
   }

   abstract public void name();
}
public class Maserati extends Car {
   public void name() {
      System.out.print("Maserati!");
   }
   public static void main(String args[]){
      Maserati car = new Maserati();
      car.name();
   }
}
Copier après la connexion

Sortie

Maserati!
Copier après la connexion

Conclusion

OOPS est un concept de base dans de nombreux langages de programmation. C'est un paradigme basé sur des objets contenant des méthodes et des données. La transmission de messages est une forme de communication utilisée dans les langages de programmation orientés objet et la programmation parallèle. L'agrégation est une forme d'association au sens unique, et c'est une association strictement directionnelle. L'abstraction est une technique utilisée dans les langages de programmation orientés objet qui affiche uniquement les détails pertinents pour l'utilisateur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal