Java的Overriding重写-笔记
来源:互联网 发布:网络自由与秩序申论 编辑:程序博客网 时间:2024/06/06 01:25
Java - Overriding重写
本文参考这里
区别:
- overload:重载,名相同/参数不同(类型/数目),即函数签名不相同。重载发生在同一个类内的两个或多个方法间,平行的关系。
- override:重写、也译覆盖,函数签名相同。重写发生在父与子类之间,层次的关系。
子类从父类中继承到一个非final
方法,则可以在子类中对该方法进行重写(overriding)。
例子1:
class Animal{ public void move() { System.out.println("Animals-move"); }}class Dog extends Animal{ public void move() // 重写overriding { System.out.println("Dogs-move"); }}Animal a = new Animal(); // Animal reference and objectAnimal b = new Dog(); // Animal reference but Dog objecta.move(); // runs the method in Animal classb.move(); // Runs the method in Dog class// 运行结果:Animals-moveDogs-move
例子2:
// MainTest.javaclass Animal{ void say() { System.out.println("animal say"); }}class Dog extends Animal{ @Override void say() { System.out.println("dog say"); }}class Cat extends Animal{ @Override void say() { System.out.println("cat say"); } // for overload test void move() { System.out.println("cat move"); } void move(int i) { System.out.println("cat another move"); }}public class MainTest{ public static void main(String[] args) { Animal a = new Animal(); Animal b = new Dog(); Cat c = new Cat(); // overriding, 多态 a.say(); b.say(); c.say(); // overload c.move(); c.move(1); }}// 运行结果:animal saydog saycat saycat movecat another move
方法重写的规则(rules)
略
super
关键字
调用父类版本的方法 When invoking a superclass version of an overridden method the super
keyword is used.
0 0
- Java的Overriding重写-笔记
- Java学习笔记之重写(Overriding)与重载(Overloading)
- Java方法重写(overriding method)
- java中方法的重写Overriding和重载Overloading
- Java中重载Overloading与重写Overriding的区别
- java中重载Overriding与重写Overloading的区别
- Java中重载(Overloading)与重写(Overriding)的区别
- Java重载overloading与重写(覆盖)overriding
- 方法的重载(overloading)与重写(overriding)
- 方法的重载(overloading)与重写(overriding)
- 重载overloading和重写overriding的区别
- 重写(Overriding)与重载(Overloading)的区别
- java中方法的重写(overriding)与重载(overloading)的区别
- java语言中方法重载overloading和方法重写(覆写)overriding的区别
- Java中的方法重载(method overloading)和方法重写(method Overriding)的区别
- JAVA基础(一)——重载(Overloading)与重写(Overriding)的区别
- java重写(override)和重载(Overriding)--->多态的体现
- java的Overriding和Overloading
- 黑马程序员——OC语言------继承、多态
- 11582 - Colossal Fibonacci Numbers!
- 深入浅出Redis(三)高级特性:管道
- 蓝桥杯 买不到的数目(数学,不懂)
- HTTP与HTTPS的区别
- Java的Overriding重写-笔记
- Properties的使用
- 自助去除APK的广告!(整理、修改、简化版)
- mysql 字符集(CHARACTER SET)和校对集(COLLATE)
- java设置web首页访问action
- matlab入门 元胞数组
- Android ActionBar完全解析,使用官方推荐的最佳导航栏(下)
- 懂得享受
- android NDK使用详解(一)