Java的方法和方法重载

退补选的时候听说程序设计模式这门课很水,就为了学分抢到了,没想到这门课主要是用Java讲的,于是回去学了学.

Java中的函数被称为方法,Java中的任何方法都必须在类中定义,定义一个方法的一般形式是这样:

[访问权限] 返回值类型 方法名称(形参列表) {
        方法主体;
    }

下面是一个求绝对值的例子

public class AbsoluteValue
{
  /*求绝对值的方法*/
  public int abs(int x)
  {
    return ((x >= 0) ? x : -x);
  }

  /*main方法,程序入口*/
  public static void main(String[] args)
  {
    //必须先实例化类的对象,才可以调用到其中的成员方法
    AbsoluteValue obj = new AbsoluteValue();
    int a = -8, b;
    b = obj.abs(a);  //调用abs方法求a的绝对值
    System.out.println(a + "的绝对值是" + b);
  }
}
这个例子只能求整形数据的绝对值,假如你想要求其它类型的绝对值,如果又定义了几个方法,这对调用者来说非常麻烦,这时候就可以用到方法重载

方法重载用于用于定义一组方法,这些方法具有相同的名称,并执行类似的操作,但是却使用不同的参数列表,而编译器会根据调用时的实际参数自动判断具体是哪个重载方法.

方法重载要满足三点:

1方法名相同
2参数不同(包括数量不同,类型不同,顺序不同)
3同一作用域
而方法重载与方法的返回值类型没有关系

下面是方法重载的一个示例

public class AbsoluteValue {
  public int abs(int x) {//求整数的绝对值
    return ((x >= 0) ? x : -x);
  }
  public float abs(float x) {//求浮点数的绝对值
    return ((x >= 0) ? x : -x);
  }
  public double abs(double x) {//求双精度数的绝对值
    return ((x >= 0) ? x : -x);
  }
  public long abs(long x) {//求长整型数的绝对值
    return ((x >= 0) ? x : -x);
  }

  public static void main(String[] args) {
    AbsoluteValue obj = new AbsoluteValue();
    int a = -8, b;
    b = obj.abs(a);
    System.out.println(a + "的绝对值是" + b);

    float c = -3.14f, d;
    d = obj.abs(c);
    System.out.println(c + "的绝对值是" + d);
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值