Introduction à la programmation orientée objet en Java

Java est une programmation orientée objet conçue par James Gosling. Il s'agit d'un langage de programmation à usage général basé sur des classes et doté de fonctionnalités de programmation simultanées. Il a également des fonctionnalités multi-threading. Il s'agit d'un langage de programmation statique, sûr et fortement typé. Il a été développé et est maintenu par Oracle Corporation (alors Sun Corporation). Ses 'noms d'extension de fichier sont .java ou .class. Il est apparu pour la première fois en 1995. Il est destiné à développer des applications qui peuvent être écrites une seule fois et exécutées n'importe où. Il est le plus populaire pour le type d'applications client-serveur. Il est sous licence GNU General Public License et Java Community Process. La dernière version de Java est 10 qui est publiée en mars 2018.

Explication de la programmation orientée objet en Java

Le langage de programmation Java est basé sur une méthodologie ou un paradigme de programmation orientée objet qui a différents types de concepts tels que les classes, les objets, l'héritage, le polymorphisme, l'encapsulation et l'abstraction qui peuvent être décrits comme ci-dessous:

Classe: Il s'agit d'un plan de l'objet qui définit les champs ou les attributs et les méthodes dans lesquels se trouve la véritable fonctionnalité. Ces attributs et méthodes sont appelés membres et ces membres sont accessibles en fonction des modificateurs d'accès définis lors de la déclaration des membres.

Objet: Un objet est appelé comme une instance de la classe qui peut être déclarée et instanciée en appelant le constructeur de la classe. Un objet aura l'état et l'état contiendra des données qui seront détenues par les attributs de la classe.

Héritage: Il s'agit de la troisième étape du processus au cours duquel les données seront inspectées, nettoyées, transformées et visualisées en réduisant les informations inutiles et en les transformant en d'importants ensembles d'informations afin d'obtenir des informations précieuses à partir des données existantes.

Polymorphisme: Le polymorphisme est défini comme le processus consistant à effectuer une seule tâche de différentes manières possibles. En Java, le polymorphisme peut être réalisé de deux manières appelées surcharge de méthode et substitution de méthode. La surcharge de méthode est également appelée polymorphisme de temps de compilation tandis que la substitution de méthode est également appelée polymorphisme de temps d'exécution.

Encapsulation: Il s'agit du processus d'encapsulation qui signifie masquer ou lier ou envelopper le code dans une seule unité ou module qui est défini comme classe en Java. La fonction d'encapsulation de la programmation orientée objet peut être obtenue en utilisant une classe en Java. Un ancien objet java simple ou un Java Bean est censé être encapsulé car les membres de la classe sont privés (modificateur d'accès) ceux auxquels on ne peut accéder qu'en utilisant les méthodes getters et setters dans la classe.

Abstraction: L'abstraction de la fonctionnalité orientée objet peut être définie comme le processus de masquage de l'implémentation des fonctionnalités en exposant uniquement les interfaces requises ou en accédant aux méthodes afin d'invoquer les méthodes de la classe Implementation. L'abstraction peut être réalisée dans le langage de programmation Java en utilisant Interface et Abstract Class.

Les avantages de l'utilisation de la programmation orientée objet en Java

  1. Il permet de développer facilement les différents types d'application et leur maintenance sans surcoût.
  2. Il aide à mettre en œuvre les changements facilement en apportant de petites modifications à la conception et en rendant ainsi l'application plus adaptable aux changements plus importants requis par le client.
  3. La modularité du code facilite le processus de dépannage et la maintenance en corrigeant facilement les bogues.
  4. La réutilisation du code est le principal
  5. Il offre une plus grande flexibilité face aux changements fréquents de fonctionnalités.

Applications de la programmation orientée objet en Java

Il existe différentes applications de la programmation orientée objet en Java et voici les exemples dans ce domaine conceptuel:

  1. Classe: Une classe peut être définie comme suit:

public class Employee (
private int employeeId;
private String employeeName;
public int getSalary(int basicPay, int da, int hra) (
int salary = basicPay + da + hra;
return salary;
)
)

Dans la classe ci-dessus employeeId, le nom de l'employé et la méthode getSalary () sont les membres de la classe tandis que employeeId et le nom de l'employé sont les attributs ou les champs et getSalary () est la méthode où le travail réel est effectué.

  1. Objet: Un objet peut être créé comme ci-dessous pour la classe Employé ci-dessus.

Employee employeeObject = new Employee();

Dans la ligne ci-dessus, un objet est créé à l'aide d'un nouveau mot clé et Employee () est le constructeur d'arguments vides utilisé pour créer l'objet. l'employé s'oppose à la référence faite à la classe Employé.

  1. Polymorphisme: Ceci peut être réalisé par la substitution et la surcharge de méthode.

public int getSalary(int basicPay, int da, int hra) (
int salary = basicPay + da + hra;
return salary;
)

Dans la méthode ci-dessus, un autre argument peut être ajouté à la méthode getSalary () en ajoutant entre parenthèses comme ci-dessous:

public int getSalary(int basicPay, int da, int hra, int bonus) (
int salary = basicPay + da + hra + bonus;
return salary;
)

  1. Encapsulation: Ceci peut être réalisé comme ci-dessous:

public class Employee (
private int employeeId;
private String employeeName;
public int getEmployeeId() (
return employeeId;
)
public void setEmployeeId(int employeeId) (
this.employeeId = employeeId;
)
public String getEmployeeName() (
return employeeName;
)
public void setEmployeeName(String employeeName) (
this.employeeName = employeeName;
)
)

La classe ci-dessus Employee a deux champs (privés) et quatre méthodes (getters et setters) qui seront utilisées pour accéder aux deux attributs privés ci-dessus.

  1. Abstraction: il s'agit du processus de masquage de la fonctionnalité d'implémentation.

Dans la méthode getSalary () ci-dessus, la fonction interne de l'ajout de tous les composants d'un salaire est masquée à l'intérieur de la méthode et seule celle-ci est accessible en utilisant le nom de la méthode en passant les valeurs comme arguments de la méthode. De cette façon, le salaire total sera obtenu en passant les différentes composantes du salaire à la méthode.

Conclusion - Programmation orientée objet en Java

Il existe des domaines d'application différents et multiples dans le domaine du monde Web, autonome et de nombreux autres domaines pour le concept de programmation orientée objet en Java. L'utilisation ou l'application moyenne de la programmation orientée objet en Java a été dans les 5 premières positions pour la plupart des applications d'entreprise et a été dans presque toutes les entreprises à ce jour est la technologie la plus recherchée. Il existe un grand nombre d'outils disponibles tels que les IDE pour développer des applications utilisant la programmation orientée objet en Java et de nombreuses entreprises qui utilisent des applications basées sur Java pour leurs besoins en raison de la facilité de développement et de maintenance. Les applications autonomes développées en Java sont principalement utilisées par de nombreuses entreprises pour leurs outils internes et sont développées sur la base de la boîte à outils Java Swing GUI et sont désormais appelées Java FX dans sa version récente. La version récente de Java 8 offre d'excellentes fonctionnalités de programmation fonctionnelle et des capacités de traitement parallèle avec son API Stream.

Articles recommandés:

Cela a été un guide pour la programmation orientée objet en Java. Ici, nous avons discuté des différents concepts et des applications de la programmation orientée objet en Java. Vous pouvez également consulter l'article suivant pour en savoir plus -

  1. Oops Java Questions et réponses
  2. Programmation fonctionnelle vs différences OOP
  3. Concepts de programmation - Un guide parfait pour les nouveaux programmeurs
  4. Questions d'entretiens chez Java Testing
  5. Surcharge de méthode en C #
  6. Guide complet des objets en Java
  7. Objet en Python
  8. Surcharge et remplacement en C #