Java继承方法隐藏(覆盖)
Posted SXT
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java继承方法隐藏(覆盖)相关的知识,希望对你有一定的参考价值。
方法隐藏
一个类从其超类继承所有非私有静态方法。在子类中重新定义继承的静态方法称为方法隐藏。子类中的重定义静态方法隐藏其超类的静态方法。在类中重定义非静态方法称为方法覆盖。
关于方法隐藏的重定义方法(名称,访问级别,返回类型和异常)的所有规则与方法覆盖相同。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
class MySuper { public static void print() { System.out.println( "Inside MySuper.print()" ); } } class MySubclass extends MySuper { public static void print() { System.out.println( "Inside MySubclass.print()" ); } } public class Main { public static void main(String[] args) { MySuper mhSuper = new MySubclass(); MySubclass mhSub = new MySubclass(); MySuper.print(); MySubclass.print(); ((MySuper) mhSub).print(); mhSuper = mhSub; mhSuper.print(); ((MySubclass) mhSuper).print(); } } |
上面的代码生成以下结果。
以上是关于Java继承方法隐藏(覆盖)的主要内容,如果未能解决你的问题,请参考以下文章