extend继承、override重写、overload重载总结
发布网友
发布时间:2023-11-05 06:06
我来回答
共1个回答
热心网友
时间:2024-11-25 07:42
多态是面向对象语言的一个重要特性
多态的优点:
1. 消除类型之间的耦合关系
2. 可替换性
3. 可扩充性
4. 接口性
5. 灵活性
6. 简化性
多态存在的三个必要条件
继承
重写(重写只针对于成员方法,不能重写变量和静态方法)
父类引用指向子类对象(向上转型,父类引用只能调用父类中定义过的方法(如果子类重写了,则调用子类的,动态链接)和变量)。
1、extend继承
父类和子类同包,子类可以继承父类的所有非private修饰类型
父类和子类不同包,子类只可以继承父类public、protected修饰(不能被其它类访问)
2、override重写
有继承才能有重写
子类重写父类方法需要注意:
1、访问权限不能比父类更低。
2、父类的方法签名没有抛出异常,子类重写时也不能抛出异常。父类方法签名有抛出异常,子类重写不能抛出父类签名异常的范围更宽(如父类抛出IOException,子类不能抛出Exception)。
3、方法名、返回值、形参类型个数不能改变。
3、overload重载
方法名相同,形参个数不同或者类型不同构成方法重载。
注意:访问权限不同,返回值不同并不能构成重载。