recherche
MaisonJavajavaDidacticielCompiler le polymorphisme temporel en Java

Compile Time Polymorphism in Java

Le polymorphisme dans Java fait référence à une déclaration de capacité d'objets dans l'environnement Java. Il nous permet d'effectuer le même processus de différentes manières. Il existe deux types de polymorphismes en Java:

  • Méthode du polymorphisme compilé
  • Méthode du polymorphisme d'exécution

Aujourd'hui, nous discuterons des polymorphismes à temps de compilation à l'aide de la surcharge de méthode et de la surcharge de l'opérateur.

Exemple de polymorphisme à temps compilé

Ceci est un exemple:

void ARBRDD() { ... }
void ARBRDD(int num1 ) { ... }
void ARBRDD(float num1) { ... }
void ARBRDD(int num1 , float num2 ) { ... }
//显示(char a)的值
//显示(char a, char b)的值
//显示(float a, float b)的值
//显示(int a, int b)的值
//显示(int a, float b)的值
//显示(float a, int b)的值
int sum value of (int, int);
String sum value of (int, int);

Algorithme pour l'exécution du polymorphisme à temps de compilation

Dans cet algorithme possible, nous vous montrerons comment effectuer des polymorphismes de compilation dans un environnement Java. En utilisant cet algorithme, nous créerons une syntaxe Java pour interpréter le processus de manière efficace.

  • Étape 1 - Démarrez le processus.
  • Étape 2 - Importez et déclarez le package Java utilisé pour exécuter la méthode.
  • Étape 3 - Déclarer une classe publique.
  • Étape 4 - Mentionne les paramètres de chaîne.
  • Étape 5 - Créer et déclarer deux paramètres de fonction.
  • Étape 6 - Définissez le paramètre de fonction 1.
  • Étape 7 - Définissez le paramètre de fonction deux.
  • Étape 8 - Afficher deux listes.
  • Étape 9 - Comparez deux listes.
  • Étape 10 - Si le résultat de l'évaluation est vrai, un message égal est imprimé.
  • Étape 11 - Si le résultat de l'évaluation est faux, l'exécution du processus est bloquée et un texte inégal est imprimé.
  • Étape 12 - Insérez un autre élément et écrasez la méthode.
  • Étape 13 - Montrez les deux.
  • Étape 14 - Comparez à nouveau les deux.
  • Étape 15 - Obtenez les résultats.
  • Étape 16 - Terminez le processus.

Syntaxe pour exécuter le polymorphisme de compilation-temps

class SimpleCalculator{
    int add(int a, int b){
        return a+b;
    }
    int add(int a, int b, int c){
        return a+b+c;
    }
}
public class DemoCal{
    SimpleCalculator obj = new SimpleCalculator();
    System.out.println(obj.add(10, 20));
    System.out.println(obj.add(10, 20, 30));
}
}
class SimpleCalculator{
    int add(int a, int b){
        return a+b;
    }
    int add(int a, int b, int c){
        return a+b+c;
    }
}
public class DemoCal{
    SimpleCalculator obj = new SimpleCalculator();
    System.out.println(obj.add(10, 20));
    System.out.println(obj.add(10, 20, 30));
}
}
class MethodOverloading {
    private static void display(int a){
        System.out.println("Got Int data as a value.");
    }
    private static void display(String a){
        System.out.println("Got String object as a value.");
    }
    public static void main(String[] args) {
        display(4);
        display("XYZ");
    }
}
class Student{
    public void stuIdentity(String name, int id){
        System.out.println("stuName :" + name + " "
        + "Id :" + id);
    }
    public void stuIdentity(int id, String name){
        System.out.println("Id :" + id + " " + "stuName :" + name);
    }
}
class Main {
    Student stu= new Student();
    stu.stuIdentity("Mohit Roy", 1);
    stu.stuIdentity(2, "Mohini Basu");
}
}

Dans la syntaxe ci-dessus, nous essayons de vous montrer comment créer une fonction pour l'utiliser dans une méthode polymorphe. En utilisant ces syntaxes Java, nous nous déplacerons vers certaines méthodes Java liées au polymorphisme à temps de compilation.

Méthodes pour suivre

  • Méthode 1 - Le programme Java montre comment fonctionne la surcharge de méthode lors de la compilation du polymorphisme en modifiant le nombre de paramètres
  • Méthode 2 - Les programmes Java utilisent la méthode Render () de type pour le polymorphisme de compilation

Méthode 1: Utilisez des paramètres numériques pour effectuer des polymorphismes de temps de compilation

Utilisation de la méthode CON_STR

Dans cette méthode, nous appliquerons la méthode CON_STR pour démontrer comment le polymorphisme fonctionne au moment de la compilation en modifiant le nombre de paramètres.

String con_str = s1 + s2;
System.out.println("Concatenated strings :"+ con_str);

Exemple

//Java程序演示通过更改参数数量来演示编译时多态性的方法重载的工作原理
public class ARBRDD {
   void show(int num1){
      System.out.println("number 1 : " + num1);
   }
   void show(int num1, int num2){
      System.out.println("number 1 : " + num1 + " number 2 : " + num2);
   }
   public static void main(String[] args){
      ARBRDD obj = new ARBRDD();
      obj.show(3);
      obj.show(4, 5);
   }
}

sortie

<code>number 1 : 3
number 1 : 4 number 2 : 5</code>

Utilisation des méthodes de type de données

Dans cette méthode, nous appliquerons la méthode du modèle de type de données pour démontrer comment le polymorphisme fonctionne au moment de la compilation en modifiant le nombre de paramètres.

Exemple

void ARBRDD() { ... }
void ARBRDD(int num1 ) { ... }
void ARBRDD(float num1) { ... }
void ARBRDD(int num1 , float num2 ) { ... }
//显示(char a)的值
//显示(char a, char b)的值
//显示(float a, float b)的值
//显示(int a, int b)的值
//显示(int a, float b)的值
//显示(float a, int b)的值
int sum value of (int, int);
String sum value of (int, int);

sortie

class SimpleCalculator{
    int add(int a, int b){
        return a+b;
    }
    int add(int a, int b, int c){
        return a+b+c;
    }
}
public class DemoCal{
    SimpleCalculator obj = new SimpleCalculator();
    System.out.println(obj.add(10, 20));
    System.out.println(obj.add(10, 20, 30));
}
}
class SimpleCalculator{
    int add(int a, int b){
        return a+b;
    }
    int add(int a, int b, int c){
        return a+b+c;
    }
}
public class DemoCal{
    SimpleCalculator obj = new SimpleCalculator();
    System.out.println(obj.add(10, 20));
    System.out.println(obj.add(10, 20, 30));
}
}
class MethodOverloading {
    private static void display(int a){
        System.out.println("Got Int data as a value.");
    }
    private static void display(String a){
        System.out.println("Got String object as a value.");
    }
    public static void main(String[] args) {
        display(4);
        display("XYZ");
    }
}
class Student{
    public void stuIdentity(String name, int id){
        System.out.println("stuName :" + name + " "
        + "Id :" + id);
    }
    public void stuIdentity(int id, String name){
        System.out.println("Id :" + id + " " + "stuName :" + name);
    }
}
class Main {
    Student stu= new Student();
    stu.stuIdentity("Mohit Roy", 1);
    stu.stuIdentity(2, "Mohini Basu");
}
}

Utilisation des méthodes de paramètres de séquence

Dans cette méthode, nous appliquerons la méthode des paramètres de séquence pour démontrer comment le polymorphisme fonctionne au moment de la compilation en modifiant le nombre de paramètres.

Exemple

String con_str = s1 + s2;
System.out.println("Concatenated strings :"+ con_str);

sortie

//Java程序演示通过更改参数数量来演示编译时多态性的方法重载的工作原理
public class ARBRDD {
   void show(int num1){
      System.out.println("number 1 : " + num1);
   }
   void show(int num1, int num2){
      System.out.println("number 1 : " + num1 + " number 2 : " + num2);
   }
   public static void main(String[] args){
      ARBRDD obj = new ARBRDD();
      obj.show(3);
      obj.show(4, 5);
   }
}

Méthode 2: utilisation de la méthode render ()

Dans cette méthode, nous appliquerons la méthode de rendu pour expliquer la surcharge de l'opérateur en utilisant le polymorphisme de compilation-temps.

<code>number 1 : 3
number 1 : 4 number 2 : 5</code>

Exemple 1

//Java程序演示通过更改参数的数据类型来演示方法重载的工作原理
public class ARBRDD {
   static void show(int a, int b){
      System.out.println("This is the integer function here");
   }
   static void show(double a, double b){
      System.out.println("This is the double function here");
   }
   public static void main(String[] args){
      show(1, 2);
      show(1.2, 2.4);
   }
}

sortie

<code>This is the integer function here
This is the double function here</code>

Dans cette méthode, nous appliquerons la méthode d'informations d'affichage pour interpréter la surcharge de l'opérateur à l'aide du polymorphisme de compilation-temps.

Exemple 2

//Java程序演示通过更改参数的顺序来演示方法重载的工作原理
public class ARBRDD {
   static void show(int a, char ch){
      System.out.println("integer : " + a + " and character : " + ch);
   }
   static void show(char ch, int a){
      System.out.println("character : " + ch + " and integer : " + a);
   }
   public static void main(String[] args){
      show(6, 'G');
      show('G', 7);
   }
}

sortie

<code>integer : 6 and character : G
character : G and integer : 7</code>

Dans cette méthode, nous appliquerons la méthode Display () pour expliquer la surcharge de l'opérateur en utilisant le polymorphisme de compilation-temps.

Exemple 3

String s1 = sc.next();
System.out.println("Enter another string: ");
String s2 = sc.next();
System.out.println(s1+' '+s2);
System.out.println("Enter a number:");
int x = sc.nextInt();
System.out.println("Enter another number:");
int y = sc.nextInt();

sortie

//Java程序使用render()方法进行编译时多态性
class Polygon {
   public void render() {
      System.out.println("Rendering Polygon Value...");
   }
}
class Square extends Polygon {
   public void render() {
      System.out.println("Rendering Square Value...");
   }
}
class Circle extends Polygon {
   public void render() {
      System.out.println("Rendering Circle Value...");
   }
}
public class ARBRDD {
   public static void main(String[] args) {
      Square s1 = new Square();
      s1.render();
      Circle c1 = new Circle();
      c1.render();
   }
}

Dans cette méthode, nous appliquerons certaines variables et méthodes polymorphes pour expliquer la surcharge de l'opérateur en utilisant le polymorphisme de compilation-temps.

Exemple 4

<code>Rendering Square Value...
Rendering Circle Value...</code>

sortie

//Java程序使用重写方法进行编译时多态性
class Language {
   public void displayInfo() {
      System.out.println("Common English Language");
   }
}
class Java extends Language {
   @Override
   public void displayInfo() {
      System.out.println("Java Programming Language");
   }
}
public class ARBRDD {
   public static void main(String[] args) {
      Java j1 = new Java();
      j1.displayInfo();
      Language l1 = new Language();
      l1.displayInfo();
   }
}

Conclusion

Le polymorphisme à temps de compilation est un processus de liaison précoce, à travers lequel nous pouvons résoudre le problème de surcharge dans lequel un programme se produit en mode exécution. Dans l'article d'aujourd'hui, nous apprenons diverses méthodes sur le polymorphisme à temps de compilation. En utilisant des algorithmes et une syntaxe, nous avons également construit un code Java pour interpréter les instructions de problème de manière efficace.

Veuillez lire également: Java Interview Questions and Answers

Les exemples de code ont été améliorés pour la clarté et l'exactitude, et le texte a été réécrit pour être plus concis et engageant tout en maintenant le moteur d'origine.

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!

Déclaration
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
Expliquez comment le JVM agit comme un intermédiaire entre le code Java et le système d'exploitation sous-jacent.Expliquez comment le JVM agit comme un intermédiaire entre le code Java et le système d'exploitation sous-jacent.Apr 29, 2025 am 12:23 AM

JVM fonctionne en convertissant le code Java en code machine et en gérant les ressources. 1) Chargement de classe: Chargez le fichier .class en mémoire. 2) Zone de données d'exécution: gérer la zone de mémoire. 3) Moteur d'exécution: interpréter ou compiler les bytecode d'exécution. 4) Interface de la méthode locale: interagir avec le système d'exploitation via JNI.

Expliquez le rôle de la machine virtuelle Java (JVM) dans l'indépendance de la plate-forme de Java.Expliquez le rôle de la machine virtuelle Java (JVM) dans l'indépendance de la plate-forme de Java.Apr 29, 2025 am 12:21 AM

JVM permet à Java de courir sur les plates-formes. 1) JVM charge, valide et exécute Bytecode. 2) Le travail de JVM comprend le chargement des classes, la vérification du bytecode, l'exécution d'interprétation et la gestion de la mémoire. 3) JVM prend en charge les fonctionnalités avancées telles que la charge de classe dynamique et la réflexion.

Quelles étapes prenez-vous pour vous assurer qu'une application Java s'exécute correctement sur différents systèmes d'exploitation?Quelles étapes prenez-vous pour vous assurer qu'une application Java s'exécute correctement sur différents systèmes d'exploitation?Apr 29, 2025 am 12:11 AM

Les applications Java peuvent s'exécuter sur différents systèmes d'exploitation via les étapes suivantes: 1) Utiliser la classe de fichiers ou de chemins pour traiter les chemins de fichier; 2) Définir et obtenir des variables d'environnement via System.getenv (); 3) Utilisez Maven ou Gradle pour gérer les dépendances et tester. Les capacités multiplateforme de Java reposent sur la couche d'abstraction de JVM, mais nécessitent toujours une manipulation manuelle de certaines caractéristiques spécifiques au système d'exploitation.

Y a-t-il des domaines où Java nécessite une configuration ou un réglage spécifique à la plate-forme?Y a-t-il des domaines où Java nécessite une configuration ou un réglage spécifique à la plate-forme?Apr 29, 2025 am 12:11 AM

Java nécessite une configuration et un réglage spécifiques sur différentes plates-formes. 1) Ajustez les paramètres JVM, tels que -XMS et -XMX pour définir la taille du tas. 2) Choisissez la stratégie de collecte des ordures appropriée, telle que parallelGC ou G1GC. 3) Configurez la bibliothèque native pour s'adapter à différentes plates-formes. Ces mesures peuvent permettre aux applications Java de fonctionner le mieux dans divers environnements.

Quels sont les outils ou les bibliothèques qui peuvent vous aider à relever les défis spécifiques à la plate-forme dans le développement de Java?Quels sont les outils ou les bibliothèques qui peuvent vous aider à relever les défis spécifiques à la plate-forme dans le développement de Java?Apr 29, 2025 am 12:01 AM

OSGI, apachecommonslang, JNA, etjvmoptionsaReeffectiveforHandlingPlatform-spécificchallengesinjava.1) OSGIMANAGESDENDENCESSALDSOLATES COMPOST

Comment le JVM gère-t-il la collection des ordures sur différentes plates-formes?Comment le JVM gère-t-il la collection des ordures sur différentes plates-formes?Apr 28, 2025 am 12:23 AM

JvmManagesgarBageCollectionACROSSPLATFORMSEFFECTIVELYBUSEUSAGENERATIONSPROACHANDADAPTINGTOOSANDHARDWAREDIFFERENCES.ITEPLOCHESSVARIEDSCOLLECTORSELESEERIAL, parallèle, CMS, etg1, chacun

Pourquoi le code Java peut-il fonctionner sur différents systèmes d'exploitation sans modification?Pourquoi le code Java peut-il fonctionner sur différents systèmes d'exploitation sans modification?Apr 28, 2025 am 12:14 AM

Le code Java peut fonctionner sur différents systèmes d'exploitation sans modification, car la philosophie "écrire une fois, exécuter partout" de Java est implémentée par Java Virtual Machine (JVM). En tant qu'intermédiaire entre le bytecode Java compilé et le système d'exploitation, le JVM traduit le bytecode en instructions de machine spécifiques pour s'assurer que le programme peut s'exécuter indépendamment sur n'importe quelle plate-forme avec JVM installé.

Décrivez le processus de compilation et d'exécution d'un programme Java, mettant en évidence l'indépendance de la plate-forme.Décrivez le processus de compilation et d'exécution d'un programme Java, mettant en évidence l'indépendance de la plate-forme.Apr 28, 2025 am 12:08 AM

La compilation et l'exécution des programmes Java réalisent l'indépendance de la plate-forme via ByteCode et JVM. 1) Écrivez le code source Java et compilez-le en bytecode. 2) Utilisez JVM pour exécuter ByteCode sur n'importe quelle plate-forme pour vous assurer que le code s'exécute sur les plates-formes.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Dreamweaver Mac

Dreamweaver Mac

Outils de développement Web visuel

mPDF

mPDF

mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) ​​et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),

SublimeText3 Linux nouvelle version

SublimeText3 Linux nouvelle version

Dernière version de SublimeText3 Linux

Télécharger la version Mac de l'éditeur Atom

Télécharger la version Mac de l'éditeur Atom

L'éditeur open source le plus populaire

PhpStorm version Mac

PhpStorm version Mac

Le dernier (2018.2.1) outil de développement intégré PHP professionnel