您的位置:首页 > 职场人生

携程java面向对象面试题

2015-10-09 00:00 204 查看
1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21
public

class

Base {



private

String name =

"hello"

;



public

Base() {


//  System.out.println(this);


//  关键是要认识到调用callName方法的是sub类型的对象



callName();



}



public

void

callName(){



System.out.println(name);



}



public

static

void

main(String[] args) {



new

Sub();



}


}


class

Sub

extends

Base{



private

String name=

"world"

;



public

void

callName(){



System.out.println(name);



}


}

相比原题有点小改动,问题就是最后控制台输出什么。个人认为这个问题的关键在于认识到Base()对象构造方法中调用callName()的是什么对象。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: