日期:2014-05-19  浏览次数:20759 次

关于继承的问题!!!!!!!
我现在有两个类基类为car派生类为bus,其中基类的weight为protected   的变量。
        class   car   {

                public   int   wheel;
                protected   float   weight;

                protected   float   a()
                {
                       
                }
        }

        class   bus:car   {

                public   void   b(){
                        car   v1   =   new   car();
                       
                }                
               
        }

问题是:在子类bus中,不能访问受保护的weight变量。是什么原因呢。



------解决方案--------------------
你的概念错误
bus类继承了car类,代表着bus类内可以使用这个protected的字段weight
你在bus类仍然实例化的是car的对象,对于car这个类来说,在bus类就是类外,当然访问不到weight这个字段