方法的重载与重写

* 方法的重载(overload)

  • 要求:1.同一个类中 2.方法名必须相同 3.方法的参数列表不同(①参数的个数不同②参数类型不同)
  • 补充:方法的重载与方法的返回值类型没有关系!

如下的四个方法构成重载

//定义两个int型变量的和
public int getSum(int i,int j){
	return i + j;
}
//定义三个int型变量的和
public int getSum(int i,int j,int k){
	return i + j + k;
}
//定义两个double型数据的和
public double getSum(double d1,double d2){
	return d1 + d2;
}

//定义三个double型数组的和
public void getSum(double d1,double d2,double d3){
	System.out.println(d1 + d2 + d3);
}

不能与如上的几个方法构成重载

	public int getSum1(int i,int j,int k){
		return i + j + k;
	}
	public void getSum(int i,int j,int k){
		System.out.println(i + j + k);
	}

以下的两个方法构成重载

public void method1(int i,String str){
	
}
public void method1(String str1,int j){
	
}

方法的重写(override orverwrite) vs 重载(overload)

**

【面试题】方法的重载与重写的区别?

重载:“两同一不同”:同一个类,同一个方法名,不同的参数列表。 注:方法的重载与方法的返回值无关!
>构造器是可以重载的
重写:(前提:在继承的基础之上,子类在获取了父类的结构以后,可以对父类中同名的方法进行“重构”)
方法的返回值,方法名,形参列表形同;权限修饰符不小于父类的同名方法;子类方法的异常类型不大于父类的;
两个方法要同为static或同为非static。

class Cirlce{
   //求圆的面积
    public double findArea(){
 }

}

class Cylinder extends Circle{
      //求圆柱的表面积
      @override
      public double findArea(){
      }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值