⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 methodoverloadingdemo.java

📁 java程序设计教程的源码
💻 JAVA
字号:
//【例4-12】  方法重载的使用。
//程序清单4-12:  //MethodOverloadingDemo.java
package e4_12;

public class MethodOverloadingDemo {
	public static void main(String args[]) {
		int a = 10, b = 20, z = 30;
		ArithmeticOperation ao = new ArithmeticOperation();
		// ao.add(a, b)与add(int x, int y)精确匹配,而不调用add(double x, double y)
		System.out.println("ao.add(a, b)=" + ao.add(a, b));
		// ao.add((double) a, (double) b)与add(double x, double y)精确匹配
		System.out.println("ao.add((double) a, (double) b)="
				+ ao.add((double) a, (double) b));
		// ao.add(a, (double) b)与add(int x, double y)精确匹配
		System.out.println("ao.add(a, (double) b)=" + ao.add(a, (double) b));
		// ao.add((double) a, b)与add(double y, int x)精确匹配
		System.out.println("ao.add((double) a, b)=" + ao.add((double) a, b));
		// ao.add(a, b, z)没有与之精确匹配的方法,则将int类型的变量a,b,z自动转
		// 换为doulbe类型,然后与add(double x, double y, double z)精确匹配
		System.out.println("ao.add(a, b, z)=" + ao.add(a, b, z));
	}
}

class ArithmeticOperation {
	public int add(int x, int y) {
		System.out.println("调用:public int add(int x, int y)");
		return x + y;
	}

	/*
	 * 返回值类型不足以区分重载方法 public double add(int x, int y) { return (double) (x + y); }
	 */
	public double add(double x, double y) {// 参数类型不同重载
		System.out.println("调用:public double add(double x, double y)");
		return x + y;
	}

	public double add(int x, double y) {// 参数类型不同重载
		System.out.println("调用:public double add(int x, double y)");
		return (double) (x + y);
	}

	public double add(double y, int x) {// 参数顺序不同重载
		System.out.println("调用:public double add(double y, int x)");
		return (double) (x + y);
	}

	public double add(double x, double y, double z) {// 参数个数不同重载
		System.out
				.println("调用:public double add(double x, double y, double z) ");
		return x + y + z;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -