阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
2016-10-21 11:52
393 查看
package alfred; public class Base { private String baseName = "base"; public Base() { callName(); } public void callName() { System.out.println(baseName); } static class Sub extends Base { private String baseName = "sub"; public Sub() { // super();//只是执行到这一步,没有初始化子类成员变量,输出null // System.out.println(this.baseName);//初始化子类成员变量,输出sub // callName(); } public void callName() { System.out.println(baseName); } } public static void main(String[] args) { Base b = new Sub(); } }
实际上在new Sub()时,实际执行过程为:
public Sub(){
super();
baseName = "sub";
}
可见,在baseName = "sub"执行前,子类的callName()已经执行,所以子类的baseName为默认值状态null;
相关文章推荐
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析(update)
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试一道JAVA附加题分析
- 阿里巴巴2014校园招聘研发笔试JAVA附加题一
- 阿里巴巴2014校园招聘研发笔试JAVA附加题一
- 阿里巴巴2014校园招聘研发笔试JAVA附加题
- 一道阿里巴巴笔试题中,关于java中的变量,初始化快,构造函数初始化分析
- 2015年秋季阿里巴巴在线笔试——Java研发师——部分试题分析
- 阿里巴巴2014研发实习生笔试解析
- 2014阿里巴巴校园招聘笔试题-----研发工程师
- 阿里巴巴2014 3.29 研发工程师笔试题