java继承之private与子类父类的关系

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

package jxau;

public class TestOne {

	private int age = 1;
	
	public int getAge(){
		return age;
	}
	
	public static void main(String[] args) {
		O to = new O();
		System.out.println(to.getAge());
	}
}

class O extends TestOne{
	
	public int age = 2;
	
}

这个程序的结果是1,说明子类在继承父类时是为private的age开辟了空间!

package jxau;

class Animal {
	public Animal(){
		System.out.println(this);
	}
	 
}

public class Test extends Animal {
	 
	public Test(){
		super();
		System.out.println(this);
	}
	 
	public static void main(String[] args) {
		Test test = new Test();
		 
	}

}

这个程序的结果是

jxau.Test@1f01b29

jxau.Test@1f01b29

说明父类对象并没有被创建,在子类创建对象的时候只是调用了父类的构造方法,调用父类的构造方法并不能说明创建了父类对象。

转载于:https://my.oschina.net/liyixiangBlog/blog/303860

你可能感兴趣的:(java继承之private与子类父类的关系)