java方法重写和重载的区别

方法重写override

  1. 类:产生两个继承关系的类,子类重写父类的方法
  2. 权限修饰符:子类可以大于等于父类
  3. 特征修饰符:
    父类方法是final,子类不能重写
    父类方法是static,子类不存在重写
    父类方法是abstract,子类如果是具体类则必须重写方法,否则子类是抽象类可以不重写
  4. 返回值:子类可以小于等于父类(相当于多态效果)
  5. 方法名:子类与父类一致
  6. 参数:子类与父类一致
  7. 异常:如果父类方法抛出运行时异常(RuntimeException),子类可以不予理会
    如果父类方法抛出编译时异常,子类抛出异常的个数要少于父类,子类抛出异常的类型要小于等于父类
  8. 方法体:子类的方法内容与父类不一致,否则没有意义

方法重载overload

  1. 类:一个类中的一组方法
  2. 权限修饰符:没有要求
  3. 特征修饰符:没有要求
  4. 返回值:没有要求
  5. 名字:一个类中的多个方法名必须一致
  6. 参数:每一个方法的参数必须不一致(体现在个数、类顺序)
  7. 异常:没有要求
  8. 方法体:每一个重载的方法,执行过程都不一致

猜你喜欢

转载自blog.csdn.net/weixin_45608165/article/details/112692119
今日推荐