方法重载 与 方法覆盖

方法重载   @Overload

  • 方法名相同
  • 方法的参数类型、个数、顺序、至少有一项不相同
  • 方法的返回值类型可以不相同
  • 方法的修饰符可以不相同

方法覆盖   @Override

  • 覆盖只能存在于子类和父类(包括父类和简介父类)之间。在同一个类中方法只能被重载不能被覆盖
  • 子类的名称、参数签名和返回值类型必须与父类方法名称、参数签名和返回值类型一致
  • 子类方法不能缩小父类方法的访问权限
  • 子类方法不能抛出父类方法更多的异常
  • 父类静态方法不能被子类覆盖为非静态方法
  • 子类可以定义为与父类静态方法同名的静态方法,以便在子类中隐藏父类的静态方法
  • 父类的私有方法不能被覆盖
  • 父类的抽象方法可以被子类通过两种途径覆盖:
  1. 子类实现父类的抽象方法
  2. 子类重新声明父类的抽象方法
  • 父类非抽象方法可以被覆盖为抽象方法

 

posted @ 2019-06-02 17:53  小怪兽他爹爹  阅读(289)  评论(0编辑  收藏  举报