logo

Introduction à Java

Java est un langage de programmation orienté objet et basé sur les classes. Le langage est conçu pour avoir le moins d’implémentations de dépendances possible. L'intention d'utiliser ce langage est de soulager les développeurs de l'écriture de codes pour chaque plate-forme. Le terme WORA, écrire une fois et exécuter partout est souvent associé à ce langage. Cela signifie que chaque fois que nous compilons un code Java, nous obtenons le code d'octet (fichier .class), et cela peut être exécuté (sans le recompiler) sur différentes plates-formes à condition qu'elles prennent en charge Java. En 1995, le langage Java a été développé. Il est principalement utilisé pour développer des appareils Web, de bureau et mobiles. Le langage Java est connu pour ses fonctionnalités de robustesse, de sécurité et de simplicité. Ceci est conçu pour avoir le moins de dépendances d’implémentation possible.

Histoire

Le langage Java a une histoire très intéressante. Patrick Naughton, Mike Sheridan et Jame Gosling, connus sous le nom d'équipe verte, ont commencé le développement de Java en 1991. Ces personnes étaient les ingénieurs de Microsystèmes Sun . En 1996, la première implémentation publique a été publiée sous le nom de Java 1.0. Le compilateur de Java 1.0 a été réécrit par Arthur Van Hoff pour se conformer strictement à sa spécification. Avec l'introduction de Java 2, les nouvelles versions disposent de plusieurs configurations différentes qui ont été conçues pour les différentes plates-formes. Il convient de noter que James Gosling est également connu comme le père de Java.

Sun Microsystems a contacté l'organisme de normalisation ISO en 1997 pour formaliser Java, mais le processus a été rapidement abandonné. À un moment donné, Sun Microsystems a fourni gratuitement la plupart de ses implémentations Java, malgré son statut de logiciel propriétaire.

Programmes d'application

La mise en œuvre d'un programme d'application dans une application Java comprend les étapes suivantes.

  1. La création du programme (écriture du code)
  2. La compilation du programme.
  3. Exécuter le code compilé.

Il convient de noter ici que JDK (Java Development Kit) doit être installé correctement sur le système et que le chemin doit également être défini.

Le programme Création

Le programme Java peut être écrit à l'aide d'un éditeur de texte (Notepad++ ou NotePad ou d'autres éditeurs feront également l'affaire.) ou d'un IDE (Eclipse, NetBeans, etc.).

Nom de fichier: TestClass.java

 public class TestClass { // main method public static void main(String []args) { // print statement System.out.println('Hello World is my first Java Program.'); } } 

Écrivez le code ci-dessus et enregistrez le fichier sous le nom TestClass. Le fichier doit avoir le .Java extension.

Le programme Compilation

Ouvrez l'invite de commande et tapez javac TestClass.java . javac est la commande qui fait intervenir le compilateur Java pour compiler le programme Java. Après la commande, il faut mettre le nom du fichier à compiler. Dans notre cas, c'est TestClass.java . Après avoir tapé, appuyez sur le bouton Entrée. Si tout se passe bien, un fichier TestClass.class sera généré contenant le code d'octet. S'il y a une erreur dans le programme, le compilateur le signalera et TestClass.class ne sera pas créé.

Lancer / Exécuter le programme

Une fois le fichier .class créé, tapez classe de test java pour exécuter le programme. La sortie du programme sera affichée sur la console, mentionnée ci-dessous.

Sortir:

 Hello World is my first Java Program. 

Le nom Java

Initialement, le nom de chêne était donné à la langue. Cependant, l'équipe a décidé qu'un nouveau nom devait être donné à la langue, et des mots tels que ADN, révolutionnaire, Jolt, Dynamic, Silk, etc. ont été suggérés. Tous ces noms étaient amusants à prononcer et faciles à épeler. Mais ce qui manquait, c'était l'essence du langage dans les noms suggérés, ce que l'équipe souhaitait avoir. Selon James Gosling, Java et Silk étaient deux des options les plus populaires, et comme Java avait un nom unique, la plupart des gens le préféraient.

Java est également le nom d'une île d'Indonésie où le café (appelé Java Coffee) était produit. Le nom Java a été choisi par James Gosling parce qu'il prenait un café près de son bureau. Les lecteurs doivent noter que Java n’est pas un acronyme. C'est juste un nom.

Les terminologies en Java

JVM (machine virtuelle Java) : JVM est la spécification qui facilite l'environnement d'exécution dans lequel l'exécution du bytecode Java a lieu. Chaque fois que l'on utilise la commande Java, une instance de la JVM est créée . JVM facilite la définition de la zone mémoire, du jeu de registres, du format de fichier de classe et du rapport d'erreurs fatales. Notez que la JVM dépend de la plate-forme.

Code d'octet : Il a déjà été évoqué dans la partie introductive que le compilateur Java compile le code Java pour générer le fichier .class ou le byte code. Il faut utiliser le javac commande pour appeler le compilateur Java.

Kit de développement Java (JDK) : Il s'agit du kit de développement Java complet qui englobe tout, y compris JRE (Java Runtime Environment), le compilateur, la documentation Java, les débogueurs, etc. JDK doit être installé sur l'ordinateur pour la création, la compilation et l'exécution d'un programme Java.

Environnement d'exécution Java (JRE) : JRE fait partie du JDK. Si un système n'a installé que JRE, l'utilisateur peut uniquement exécuter le programme. Autrement dit, seul le Java la commande fonctionne. La compilation d'un programme Java ne sera pas possible (le javac la commande ne fonctionnera pas).

Éboueur: Les programmeurs ne peuvent pas supprimer des objets en Java. Pour ce faire, JVM dispose d'un programme appelé Garbage Collector. Les Garbage Collectors mémorisent ou suppriment les objets non référencés. Garbage Collector facilite la vie d'un développeur/programmeur car il n'a pas à se soucier de la gestion de la mémoire.

Chemin de classe : Comme son nom l'indique, classpath est le chemin sur lequel le compilateur Java et le runtime Java recherchent le fichier .class à charger. De nombreuses bibliothèques intégrées sont fournies par le JDK. Cependant, si quelqu'un souhaite utiliser les bibliothèques externes, cela doit être ajouté au chemin de classe.

Principales caractéristiques de Java

Indépendant de la plateforme : Au lieu de générer directement le fichier .exe, le compilateur Java convertit le code Java en code octet, et ce code octet peut être exécuté sur différentes plates-formes sans aucun problème, ce qui fait de Java un langage indépendant de la plate-forme. Notez que pour exécuter le byte code, JVM doit être installé sur le système, ce qui dépend de la plate-forme.

Langage de programmation orienté objet : Le concept de programmation orientée objet est basé sur le concept d'objets et de classes. En outre, plusieurs qualités sont présentes dans la programmation orientée objet. Quelques-uns d’entre eux sont mentionnés ci-dessous.

  • Abstraction
  • Héritage
  • Polymorphisme
  • Encapsulation

Le langage Java utilise également abondamment les notions de classes et d'objets. De plus, toutes ces fonctionnalités mentionnées ci-dessus sont présentes dans Java, ce qui fait de Java un langage de programmation orienté objet. Notez que Java est un langage de programmation orienté objet mais pas 100 % orienté objet.

Simple: Java est considéré comme un langage simple car il n'a pas le concept de pointeurs, d'héritages multiples, d'allocation de mémoire explicite ou de surcharge d'opérateurs.

Robuste:

Le langage Java est très robuste. La signification de robuste est fiable. Le langage Java est développé de telle manière qu'un grand nombre de vérifications d'erreurs sont effectuées le plus tôt possible. C'est pour cette raison que ce langage peut identifier les erreurs difficiles à identifier dans d'autres langages de programmation. La gestion des exceptions, le garbage collection et l'allocation de mémoire sont les fonctionnalités qui rendent Java robuste.

Sécurisé: Il existe plusieurs erreurs comme le débordement de tampon ou la corruption de pile qui ne peuvent pas être exploitées dans le langage Java. On sait que le langage Java ne possède pas de pointeurs. Il n’est donc pas possible d’accéder aux tableaux hors limites. Si quelqu'un essaie de le faire, une exception ArrayIndexOutofBound est déclenchée. De plus, l'exécution des programmes Java se fait dans un environnement complètement indépendant du système d'exploitation, ce qui rend ce langage encore plus sécurisé.

Distribué: Des applications distribuées peuvent être créées à l'aide du langage Java. Les beans Java d'entreprise et l'invocation de méthode à distance sont utilisés pour créer des applications distribuées. La distribution de programmes Java peut se faire facilement entre un ou plusieurs systèmes connectés les uns aux autres via Internet.

Multithreading : Le langage Java prend en charge le multithreading. La fonctionnalité multithreading prend en charge l’exécution simultanée de deux ou plusieurs parties du programme. Ainsi, l'utilisation du CPU est maximisée.

Portabilité: Nous savons que Java est un langage indépendant de la plateforme. Ainsi, le code d'octet généré sur un système peut être utilisé sur n'importe quelle autre plate-forme pour être exécuté, ce qui rend Java portable.

Performances de haut niveau : L'architecture de Java est créée de telle manière qu'elle réduit la surcharge d'exécution. À certains endroits, Java utilise le compilateur JIT (Just In Time) lorsque le code est compilé à la demande, où le compilateur compile uniquement les méthodes invoquées et accélère ainsi l'exécution des applications.

télécharger sts

Flexibilité dynamique : Le langage Java suit le paradigme de programmation orientée objet, ce qui nous donne la liberté d'ajouter de nouvelles méthodes et classes aux classes existantes. Le langage Java prend également en charge les fonctions mentionnées dans les langages C/C++ et qui sont généralement appelées méthodes natives.

Exécution du bac à sable : C'est un fait connu que les programmes Java sont exécutés dans des environnements différents, ce qui donne aux utilisateurs la liberté d'exécuter leurs propres applications sans affecter le système sous-jacent utilisant le vérificateur de bytecode. Le vérificateur Bytecode offre également une sécurité supplémentaire car il vérifie le code pour toute violation d'accès.

Écrivez une fois, exécutez partout: Le code Java est compilé par le compilateur pour obtenir le fichier .class ou le byte code, totalement indépendant de toute architecture machine.

Langage compilé et interprété : La plupart des langages sont soit des langages interprétés, soit des langages compilés. Or, dans le cas du langage Java, il est compilé ainsi que le langage interprété. Le code Java est compilé pour obtenir le bytecode, et le bytecode est interprété par l'interpréteur logiciel.

Quelques programmes sur Java

Quelques programmes Java de base sont mentionnés ci-dessous.

Programme - 1

Nom de fichier: DemoClass.java

 // Importing different classes import java.io.*; // Main class public class DemoClass { // main method public static void main(String argvs[]) { System.out.println('Welcome to javaTpoint.'); } } 

Sortir:

 Welcome to javaTpoint. 

Programme - 2

Nom de fichier: AddMul.java

 // Computing the sum and product of the two numbers public class AddMul { // main method public static void main(String argvs[]) { int a1; int a2; int add = 0; int prod = 0; a1 = 12; a2 = 14; add = a1 + a2; // addition prod = a1 * a2; // multiplication System.out.println('Sum = ' + add); System.out.println('Product = ' + prod); } } 

Sortir:

 Sum = 26 Product = 168 

Programme - 3

Nom de fichier: ComputeAv.java

 // A Java program to allow the user to input two numbers from the user and compute its average. import java.util.*; public class ComputeAv { // main method public static void main(String argvs[]) { double a1; double b1; double sum1 = 0; double avg1 = 0; Scanner scnr = new Scanner(System.in); System.out.println('Input the First Number: '); a1 = scnr.nextDouble(); System.out.println('Input the Second Number: '); b1 = scnr.nextDouble(); sum1 = a1 + b1; // computing the sum avg1 = sum1 / 2; // computing the average System.out.println('Average = ' + avg1); } } 

Sortir:

 Input the First Number: 4 Input the Second Number: 5 Average = 4.5 

Programme - 4

paire java

Nom de fichier: FahrenheitCelsius.java

 // A Java program that converts Celsius to Fahrenheit using formula // Fahrenheit = ((Celsius / 5) x 9 ) + 32 // import statement for taking input import java.util.Scanner; public class FahrenheitCelsius { // main method public static void main(String argvs[]) { double cel, far; Scanner scnr = new Scanner(System.in); System.out.println('Input the temperature in Celsius: '); cel = scnr.nextDouble(); far = ((cel / 5.0) * 9.0) + 32; System.out.println('Temperature in Fahrenheit is: ' + far); } } 

Sortir:

 Input the temperature in Celsius: 15 Temperature in Fahrenheit is: 59.0 

Programme - 5

Nom de fichier: TriangleArea.java

 // A Java program for computing the triangle's area using its three sides // using heron's formula. import java.util.Scanner; public class TriangleArea { // main method public static void main(String[] argvs) { int s1, s2, s3; double halfPeri, ar; Scanner scnr = new Scanner(System.in); System.out.print('Enter the value of triangle's three sides:'); // taking user inputs s1 = scnr.nextInt(); s2 = scnr.nextInt(); s3 = scnr.nextInt(); // computing half perimeter halfPeri = (s1 + s2 + s3) / 2; // computing area of the triangle ar = Math.sqrt(halfPeri * (halfPeri - s1) * (halfPeri - s2) * (halfPeri - s3)); System.err.println('Triangles Area: ' + ar); } } 

Sortir:

 Enter the value of triangle's three sides: 15 16 17 Triangles Area: 109.98181667894016 

Description de divers mots-clés utilisés dans les programmes ci-dessus

// : Il est utilisé pour mettre des commentaires dans le code afin de le rendre plus lisible pour les lecteurs. Le compilateur ignore complètement les commentaires lors de la compilation du programme. Pour les commentaires sur plusieurs lignes, nous utilisons : /* … */

méthode main() : La méthode la plus importante du programme où commence l’exécution. Par conséquent, toute la logique doit résider dans la méthode principale. Si la méthode main() ne contient pas la logique, alors elle sera présente dans une autre méthode, mais cette méthode doit être invoquée directement ou indirectement à partir de la méthode main().

classe: Le mot-clé class est utilisé pour déclarer une classe dans le langage Java.

vide: cela signifie que la fonction ou la méthode ne renverra rien.

System.out.println() : Il est utilisé pour imprimer des instructions, des modèles, etc. sur la console.

Chaîne argvs[] : Il s'agit d'un argument de ligne de commande utilisé pour prendre des entrées.

publique: Il s'agit d'un mot-clé de spécificateur d'accès. Lorsqu’elle est appliquée à une méthode, alors cette méthode est visible par tous. Les autres mots-clés du spécificateur d’accès sont private, protected et default.

importer java.io.* : Cela signifie que toutes les classes présentes dans le package java.io est importé. Le package java.io facilite les flux de sortie et d'entrée pour l'écriture et la lecture de données dans des fichiers. * signifie tout. Si l'on souhaite importer uniquement une classe spécifique, remplacez le * par le nom de la classe.

Système.dans : C'est le flux d'entrée qui est utilisé pour lire les caractères du périphérique d'entrée, qui est généralement un clavier dans notre cas.

main vide statique() : Le mot-clé static indique que la méthode est accessible sans effectuer l'instanciation de la classe.

Système.sortie : Comme System.in est utilisé pour lire les caractères, System.out est utilisé pour donner le résultat du programme sur un périphérique de sortie tel que l'écran de l'ordinateur.

double, entier : Les différents types de données, int pour les entiers, double pour double. Les autres types de données sont char, boolean, float, etc.

println() : La méthode affiche les textes sur la console. La méthode imprime le texte à l’écran puis passe à la ligne suivante. Pour la ligne suivante, ln est utilisé. Si nous ne voulons pas que le curseur passe à la ligne suivante, utilisez la méthode print().