A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

inverse

中级黑马

  • 黑马币:-6

  • 帖子:22

  • 精华:0

override可以翻译为覆盖。
方法覆盖:如果在子类中定义一个方法,其名称、返回类型及参数签名正好与父类中某个方法的名称、返回类型及参数签名相匹配,那么可以说,子类的方法覆盖了父类的方法。
子类的返回类型与方法签名(名字与参数列表)必须与父类的一致 ,返回类型是父类被覆盖方法返回类型的子类
子类方法不能缩小父类方法的访问权限
子类方法不能抛出比父类方法更多的异常,且子类抛出的异常必须与父类抛出的异常相同或者是父类抛出异常的子类
方法覆盖只存在于子类和父类之间,同一个类中只能重载
子类可以定义于父类的静态方法同名的静态方法,以便在子类中隐藏父类的静态方法(满足覆盖约束),     
而且Java虚拟机把静态方法和所属的类绑定,而把实例方法和所属的实例绑定。
父类的非静态方法不能被子类覆盖为静态方法
父类的静态方法不能被子类覆盖为非静态方法
父类的静态方法能被子类的静态方法“覆盖”(此时叫隐藏,性质与覆盖完全不一样)
父类的私有方法不能被子类覆盖(但是不会出错,因为子类根本没有继承父类的私有方法)
父类的final方法不能被子类覆盖
父类的抽象方法可以被子类通过两种途径覆盖(即实现和覆盖)
父类的非抽象方法可以被覆盖为抽象方法

overload可以翻译为重载。
方法重载:如果有两个方法的方法名相同但参数不一致(必须的),叫方法的重载
方法名相同
方法的参数类型,个数顺序至少有一项不同
方法的返回类型可以不相同
方法的修饰符可以不相同
main方法也可以被重载
构造方法也可以被重载

方法继承:利用extends关键字一个方法继承另一个方法,而且只能直接继承一个类。
当Sub类和Base类在同一个包时Sub类继承Base类中的public/protected/默认级别的变量个方法
在不同包时继承public/protected级别的变量和方法。


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马