什么是方法重载 c 方法重载

在java中同一个类中的2个或2个以上的方法可以有同一个名字,只要它们的参数声明不同即可。这种情况下,该方法就被称为重载,这个过程称为方法重载

public class OverloadDemo{

voidtest(){//test()方法第一次重载,没有参数

System.out.println("No parameters");

}

void test(inta){//test()方法第二次重载,一个整型参数

System.out.println("a: "+a);

}

void test(int a,intb){//test()方法第三次重载,两个整型参数

System.out.println("a and b: "+a+" "+b);

}

double test(doublea){//test()方法第四次重载,一个双精度型参数

System.out.println("double a: "+a);

returna*a;//返回a*a的值

}

}

public class Overload {

public static void main(String args[]){

OverloadDemo ob=new OverloadDemo();

double result;

ob.test();//定义的是test()方法

ob.test(10);//定义的是tes t(int a)方法

ob.test(10,20);//定义的是test(int a,intb)方法

result=ob.test(123.23);//定义的是test(doublea)方法

System.out.println("result of ob.test(123.23):"+result);//输出result的值

}

}

运行结果:No parameters

a: 10

a and b: 10 20

double a: 123.23

result of ob.test(123.23):15185.6329

当一个重载的方法被调用时,Java在调用方法的参数和方法的自变量之间寻找匹配。

这种匹配并不总是精确的 在一些情况下 java的自动类型转换也适用于重载方法的自变量

例如:

public class OverloadDemo{

void test(){

System.out.println("No parameters");

}

void test(int a,int b){

System.out.println("a and b: "+a+" "+b);

}

void test(double a){

System.out.println("Inside test(double) a: "+a);

}

}

public class Overload {

public static void main(String args[]){

OverloadDemo ob=new OverloadDemo();

int i=80;

ob.test();

ob.test(10,20);

ob.test(i);//因为没有定义test(int),在调用参数时没有找到和它匹配的方法,所以java自动将int转换为double类型。只有在找不到匹配的方法时,java的自动转换才其作用。

ob.test(123.23);

}

}

什么是方法重载 c  方法重载

运行结果:No parameters

a and b: 10 20

Inside test(double) a: 80.0

Inside test(double) a: 123.23

例如:Java支持方法重载,所以求绝对值的方法只包含一个,abs()

public class Overload {

public static void main(String args[]){

double aa;

aa=java.lang.Math.abs(-11.11);

System.out.println("Abs is: "+aa);

}

}

运行结果:Abs is: 11.11

重载的价值在于它允许相关的方法可以使用同一个名字来访问,因此abs这个名字代表了它执行的通用动作。当你重载一个方法时,该方法的每个版本都能够执行你想要的任何动作。从风格上来说,方法重载还暗示了一种关系,例如用sqr这个名字创建一种方法,该方法返回一个整数的平方和一个浮点数值得平方根。但是这两种操作中功能上是不同的,这种应用方法就违背了方法重载的初衷。在实际编程中,应该只重载相互之间关系紧密的操作。

  

爱华网本文地址 » http://www.aihuau.com/a/25101016/292432.html

更多阅读

什么是眼霜,眼霜什么时候用 荧光剂面膜黑名单

什么是眼霜,眼霜什么时候用——简介 女孩子都爱美,眼霜是MM护肤的必备品 。但是还有很多女孩子不知道什么是眼霜,还有很多女孩子不知道眼霜什么时候用、怎么用,笔者正好有一些自己的经验,今天分享给大家。 什么是眼霜,眼霜什么时候用——

什么是楔形形态 楔形形态

整理形态一直是股票形态学中很重要的一个类别,而在整理形态中楔形形态又是变化多端,难以掌握的一种形态。了解清楚这种形态的明显走势特征,学会更好地把握这种形态的走势,将对投资者的交易起着很重要的指导作用。什么是楔形形态——工

什么是纯精油?纯精油如何辨识? 纯精油

什么是纯精油?纯精油如何辨识?——简介现在精油市场上乌龙混杂,很多市面上的纯精油其实是被稀释过的精油或者是化学合成油,许多消费者由于没有具备辨识的常识而不能进行正常的辨识。赶快来学习一些精油辨识的常识,使自己拥有一双辨识精油

声明:《什么是方法重载 c 方法重载》为网友亚特兰斯少年分享!如侵犯到您的合法权益请联系我们删除