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

Java - Objet et classes

Java est un langage orienté objet. En tant que langage doté de la fonctionnalité orientée objet, Java prend en charge les concepts fondamentaux suivants −

Dans ce chapitre, nous examinerons les concepts - Classes et Objets.

Objets en Java

Examinons maintenant en profondeur ce que sont les objets. Si nous considérons le monde réel, nous pouvons trouver de nombreux objets autour de nous, des voitures, des chiens, des humains, etc. Tous ces objets ont un état et un comportement.

Si nous considérons un chien, alors son état est - nom, race, couleur, et le comportement est - aboiement, remue la queue, court.

Si vous comparez l'objet logiciel avec un objet du monde réel, ils ont des caractéristiques très similaires.

Les objets logiciels ont également un état et un comportement. L'état d'un objet logiciel est stocké dans des champs et son comportement est affiché via des méthodes.

Ainsi, dans le développement de logiciels, les méthodes fonctionnent sur l'état interne d'un objet et la communication d'objet à objet se fait via des méthodes.

Cours en Java

Une classe est un plan à partir duquel des objets individuels sont créés.

Voici un exemple de classe.

Exemple

public class Dog {
   String breed;
   int age;
   String color;

   void barking() {
   }

   void hungry() {
   }

   void sleeping() {
   }
}

Une classe peut contenir n'importe lequel des types de variables suivants.

Une classe peut avoir n'importe quel nombre de méthodes pour accéder à la valeur de divers types de méthodes. Dans l'exemple ci-dessus, aboyer(), faim() et dormir() sont des méthodes.

Voici quelques-uns des sujets importants qui doivent être abordés lors de l'examen des classes du langage Java.

Constructeurs

Lors de la discussion sur les classes, l'un des sous-sujets les plus importants serait les constructeurs. Chaque classe a un constructeur. Si nous n'écrivons pas explicitement un constructeur pour une classe, le compilateur Java construit un constructeur par défaut pour cette classe.

Chaque fois qu'un nouvel objet est créé, au moins un constructeur sera appelé. La règle principale des constructeurs est qu'ils doivent avoir le même nom que la classe. Une classe peut avoir plusieurs constructeurs.

Voici un exemple de constructeur −

Exemple

public class Puppy {
   public Puppy() {
   }

   public Puppy(String name) {
      // This constructor has one parameter, name.
   }
}

Java prend également en charge les classes Singleton où vous ne pourrez créer qu'une seule instance d'une classe.

Remarque − Nous avons deux types de constructeurs différents. Nous allons discuter des constructeurs en détail dans les chapitres suivants.

Créer un objet

Comme mentionné précédemment, une classe fournit les plans des objets. Donc, fondamentalement, un objet est créé à partir d'une classe. En Java, le nouveau mot-clé est utilisé pour créer de nouveaux objets.

Il y a trois étapes lors de la création d'un objet à partir d'une classe −

Voici un exemple de création d'un objet −

Exemple

Démo en direct
public class Puppy {
   public Puppy(String name) {
      // This constructor has one parameter, name.
      System.out.println("Passed Name is :" + name );
   }

   public static void main(String []args) {
      // Following statement would create an object myPuppy
      Puppy myPuppy = new Puppy( "tommy" );
   }
}

Si nous compilons et exécutons le programme ci-dessus, il produira le résultat suivant -

Sortie

Passed Name is :tommy

Accéder aux variables et méthodes d'instance

Les variables d'instance et les méthodes sont accessibles via des objets créés. Pour accéder à une variable d'instance, voici le chemin complet −

/* First create an object */
ObjectReference = new Constructor();

/* Now call a variable as follows */
ObjectReference.variableName;

/* Now you can call a class method as follows */
ObjectReference.MethodName();

Exemple

Cet exemple explique comment accéder aux variables d'instance et aux méthodes d'une classe.

Démo en direct
public class Puppy {
   int puppyAge;

   public Puppy(String name) {
      // This constructor has one parameter, name.
      System.out.println("Name chosen is :" + name );
   }

   public void setAge( int age ) {
      puppyAge = age;
   }

   public int getAge( ) {
      System.out.println("Puppy's age is :" + puppyAge );
      return puppyAge;
   }

   public static void main(String []args) {
      /* Object creation */
      Puppy myPuppy = new Puppy( "tommy" );

      /* Call class method to set puppy's age */
      myPuppy.setAge( 2 );

      /* Call another class method to get puppy's age */
      myPuppy.getAge( );

      /* You can access instance variable as follows as well */
      System.out.println("Variable Value :" + myPuppy.puppyAge );
   }
}

Si nous compilons et exécutons le programme ci-dessus, il produira le résultat suivant -

Sortie

Name chosen is :tommy
Puppy's age is :2
Variable Value :2

Règles de déclaration du fichier source

Dans la dernière partie de cette section, examinons maintenant les règles de déclaration du fichier source. Ces règles sont essentielles lors de la déclaration de classes, import déclarations et paquet déclarations dans un fichier source.

Les classes ont plusieurs niveaux d'accès et il existe différents types de classes; classes abstraites, classes finales, etc. Nous expliquerons tout cela dans le chapitre sur les modificateurs d'accès.

Outre les types de classes mentionnés ci-dessus, Java possède également des classes spéciales appelées classes internes et classes anonymes.

Package Java

En termes simples, c'est une façon de catégoriser les classes et les interfaces. Lors du développement d'applications en Java, des centaines de classes et d'interfaces seront écrites. La catégorisation de ces classes est donc indispensable et facilite grandement la vie.

Importer des relevés

En Java, si un nom complet, qui inclut le package et le nom de la classe, est donné, le compilateur peut facilement localiser le code source ou les classes. L'instruction d'importation est un moyen de donner l'emplacement approprié au compilateur pour trouver cette classe particulière.

Par exemple, la ligne suivante demanderait au compilateur de charger toutes les classes disponibles dans le répertoire java_installation/java/io −

import java.io.*;

Une étude de cas simple

Pour notre étude de cas, nous allons créer deux classes. Ce sont Employee et EmployeeTest.

Ouvrez d'abord le bloc-notes et ajoutez le code suivant. N'oubliez pas qu'il s'agit de la classe Employee et que la classe est une classe publique. Maintenant, enregistrez ce fichier source sous le nom Employee.java.

La classe Employé a quatre variables d'instance - nom, âge, désignation et salaire. La classe a un constructeur explicitement défini, qui prend un paramètre.

Exemple

import java.io.*;
public class Employee {

   String name;
   int age;
   String designation;
   double salary;

   // This is the constructor of the class Employee
   public Employee(String name) {
      this.name = name;
   }

   // Assign the age of the Employee  to the variable age.
   public void empAge(int empAge) {
      age = empAge;
   }

   /* Assign the designation to the variable designation.*/
   public void empDesignation(String empDesig) {
      designation = empDesig;
   }

   /* Assign the salary to the variable	salary.*/
   public void empSalary(double empSalary) {
      salary = empSalary;
   }

   /* Print the Employee details */
   public void printEmployee() {
      System.out.println("Name:"+ name );
      System.out.println("Age:" + age );
      System.out.println("Designation:" + designation );
      System.out.println("Salary:" + salary);
   }
}

Comme mentionné précédemment dans ce didacticiel, le traitement commence à partir de la méthode principale. Par conséquent, pour que nous puissions exécuter cette classe Employee, il doit y avoir une méthode principale et des objets doivent être créés. Nous allons créer une classe distincte pour ces tâches.

Voici le EmployeeTest class, qui crée deux instances de la classe Employee et appelle les méthodes de chaque objet pour attribuer des valeurs à chaque variable.

Enregistrez le code suivant dans le fichier EmployeeTest.java.

import java.io.*;
public class EmployeeTest {

   public static void main(String args[]) {
      /* Create two objects using constructor */
      Employee empOne = new Employee("James Smith");
      Employee empTwo = new Employee("Mary Anne");

      // Invoking methods for each object created
      empOne.empAge(26);
      empOne.empDesignation("Senior Software Engineer");
      empOne.empSalary(1000);
      empOne.printEmployee();

      empTwo.empAge(21);
      empTwo.empDesignation("Software Engineer");
      empTwo.empSalary(500);
      empTwo.printEmployee();
   }
}

Maintenant, compilez les deux classes, puis exécutez EmployeeTest pour voir le résultat comme suit −

Sortie

C:\> javac Employee.java
C:\> javac EmployeeTest.java
C:\> java EmployeeTest
Name:James Smith
Age:26
Designation:Senior Software Engineer
Salary:1000.0
Name:Mary Anne
Age:21
Designation:Software Engineer
Salary:500.0

Quelle est la prochaine ?

Dans la prochaine session, nous discuterons des types de données de base en Java et de la manière dont ils peuvent être utilisés lors du développement d'applications Java.


Java

  1. Classe et objet C#
  2. Classes et objets C++
  3. Fonction amie C++ et classes amies
  4. Variables et littéraux Java
  5. Classe et objets Java
  6. Mot-clé Java final
  7. Opérateur instanceof Java
  8. Classe abstraite Java et méthodes abstraites
  9. Classe imbriquée et interne Java