1、方法的重载的概念
在同一个类中,允许存在一个以上的同名方法,只要同名的参数个数或者参数类型不同即可。
总结:”两同一不同“:同一个类、相同方法名
参数列表不同:参数个数不同,参数类型不同
2、例
构成重载的举例:
//一
//Arrays类中重载的sort() / binarySearch(); PrintStream中的println
//二
//如下的4个方法构成了重载
public void getSum(int i,int j){
System.out.println(i + j);
}
public void getSum(double d1,double d2){
}
public void getSum(String s,int i){
}
public void getSum(int i,String s){
}
不能构成重载的举例:
// public int getSum(int i,int j){
// return 0;
// }
//
// public void getSum(int m,int n){
//
// }
//
// private void getSum(int i,int j){
//
// }
3、如何判断是否构成方法的重载?
严格按照定义判断:两同一不同
跟方法的权限修饰符、返回值类型、形参变量名、方法体都没关系!
4、如何确定类中某一个方法的调用:
方法名 ——> 参数列表
子类继承父类以后,可以对父类中同名同参数的方法,进行覆盖操作
重写以后,当创建子类对象以后,通过 子类对象调用子父类的同名同参数的方法时,实际执行的是子类重写父类的方法
class Circle{
public double findArea(){}//求面积
}
class Cylinder extends Circle{
public double findArea(){}//求面积
}
//***********************
class Account{
public boolean withdraw(double amt){}
}
class ChexkAccount extends Account{
public boolean withdraw(double amt){}
}
方法的声明 : 权限修饰符 返回值类型 方法名(形参列表) throws 异常的类型{
//方法体
}
约定俗称 : 子类中的叫重写的方法,父类中的叫被重写的方法
子类和父类中的同名同参数的方法要么都声明为非 static 的(考虑重写,要么都声明为 static 的(不是重写))。
子类与父类中同名同参数的方法必须同时声明为非 static 的(即为重写),或者同时声明为 static 的(不是重写)。因为 static 方法是属于类的,子类无法覆盖父类的方法。
没有关系,只是名字带重
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。