重写(override)
什么时候使用覆盖操作?
当对一个类进行子类的扩展时,子类需要保留父类的功能声明,
但是要定义子类中该功能的特有内容时,就使用重写操作完成.class Phone { void call() {} void show() { //只显示电话号码 System.out.println("number"); } } class NewPhone extends Phone { void show() { //还可以显示这个人的照片和名字 System.out.println("name"); System.out.println("pic"); super.show(); } }
方法重写的原则
重写方法必须和父类中被重写方法具有相同的方法名称、输入参数和返回值类型。
重写方法不能使用比父类中被重写方法更严格的访问权限。
重写方法不能比父类中被重写方法抛出更多的异常重载跟重写之间的区别