Java之子类对象的构造过程

                                                

 如果子类的构造方法没有明显的指出使用父类的哪个构造方法,子类就调用父类的不带参数的构造方法。父类中的private成员变量尽管分配了内存空间,也不作为子类对象的成员。同样,如果子类和父类不在同一包中,尽管父类的友好成员分配了内存空间,但也不作为子类的成员。

 

子类调用继承的方法操作未被子类继承却分配了内存空间的变量:

代码

 1class A{
 2privateint x=10;
 3protectedint y=20;
 4void f(){
 5        y=y+x;
 6        System.out.printf("x=%d,y=%d\n",x,y);
 7    }
 8}
 9class B extends A{
10void g(){
11        y=y+1;
12        System.out.printf("y=%d\n",y);
13    }
14}
15publicclass test01 {
16publicstaticvoid main(String [] args){
17        B b=new B();
18        b.g();
19        b.f();
20        b.g();
21    }
22}
23

运行结果:

y=21

x=10,y=31

y=32

posted on 2009-12-14 18:26  just fuck it  阅读(552)  评论(0)    收藏  举报

导航