本帖最后由 马小龙 于 2012-8-31 15:45 编辑
复习以前内容,在覆写这个知识点的返回值问题上产生疑问,
写了一个demo:
- class Base {
- public Base newInstance() {
- return new Base();
- }
- public Base newInstance2() {
- return new Base();
- }
- }
- class Test extends Base {
- // 返回值不同
- public Test newInstance() {
- return new Test();
- }
- // 返回值相同
- public Base newInstance2() {
- return new Test();
- }
- }
复制代码 发现如果用jdk1.4以前的版本编译会报错, 但是换成用jdk1.5以后的版本后就会编译成功,为什么?
|