Java中的多态性是指Java环境中对象的一种能力声明。它允许我们以不同的方式执行相同的过程。Java中存在两种多态性:
今天,我们将讨论使用方法重载和运算符重载的编译时多态性。
这是一个示例:
<code class="language-java">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);</code>
在这个可能的算法中,我们将向您展示如何在Java环境中执行编译时多态性。通过使用此算法,我们将构建一些Java语法,以有效的方式解释该过程。
<code class="language-java">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"); } }</code>
在上面的语法中,我们尝试向您展示如何构建一个函数以在多态性方法中使用它。通过使用这些Java语法,我们将朝着一些与编译时多态性相关的Java方法前进。
在此方法中,我们将应用con_str方法来演示通过更改参数数量来演示编译时多态性的工作原理。
<code class="language-java">String con_str = s1 + s2; System.out.println("Concatenated strings :"+ con_str);</code>
<code class="language-java">//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); } }</code>
<code>number 1 : 3 number 1 : 4 number 2 : 5</code>
在此方法中,我们将应用数据类型模式方法来演示通过更改参数数量来演示编译时多态性的工作原理。
<code class="language-java">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);</code>
<code class="language-java">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"); } }</code>
在此方法中,我们将应用序列参数方法来演示通过更改参数数量来演示编译时多态性的工作原理。
<code class="language-java">String con_str = s1 + s2; System.out.println("Concatenated strings :"+ con_str);</code>
<code class="language-java">//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); } }</code>
在此方法中,我们将应用render方法来解释使用编译时多态性的运算符重载。
<code>number 1 : 3 number 1 : 4 number 2 : 5</code>
<code class="language-java">//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); } }</code>
<code>This is the integer function here This is the double function here</code>
在此方法中,我们将应用显示信息方法来解释使用编译时多态性的运算符重载。
<code class="language-java">//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); } }</code>
<code>integer : 6 and character : G character : G and integer : 7</code>
在此方法中,我们将应用display()方法来解释使用编译时多态性的运算符重载。
<code class="language-java">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();</code>
<code class="language-java">//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(); } }</code>
在此方法中,我们将应用一些多态变量和方法来解释使用编译时多态性的运算符重载。
<code>Rendering Square Value... Rendering Circle Value...</code>
<code class="language-java">//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(); } }</code>
编译时多态性是一个早期绑定过程,通过它我们可以解决程序在执行模式下出现的重载问题。在今天的文章中,我们学习了关于编译时多态性的各种方法。通过使用算法和语法,我们还构建了一些Java代码,以有效的方式解释问题陈述。
另请阅读:Java面试问题和答案
The code examples have been improved for clarity and correctness, and the text has been rewritten to be more concise and engaging while maintaining the original meaning. The image remains in its original format and location.
以上是在Java中编译时间多态性的详细内容。更多信息请关注PHP中文网其他相关文章!