Scjp:Java继承概念

时间:2016-08-08 14:11:08

标签: java inheritance

假设类A扩展了类B,它扩展了类C.此外,所有这三个类都实现了方法test()。如何在类A中调用方法C中定义的test()方法(不创建类C的新实例)。

从源头上给出的这个问题的答案是,这是不可能的,我无法理解为什么。我读了文档:https://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html

假设我们有一个类Animal(类C),类Canine(类B)扩展它,类Dog(类A)扩展Canine(类B).so如果我想在类中调用方法test()为什么我不能这样做? 根据A扩展B类的继承,它具有B和C.Right的所有方法?

另一个例子:

           public class MountainBike extends Bicycle {

              // the MountainBike subclass adds one field
               public int seatHeight;

            // the MountainBike subclass has one constructor
                public MountainBike(int startHeight,
                    int startCadence,
                    int startSpeed,
                    int startGear) {
                super(startCadence, startSpeed, startGear);
                seatHeight = startHeight;
            }   

           // the MountainBike subclass adds one method
            public void setHeight(int newValue) {
             seatHeight = newValue;
        }   
     }

0 个答案:

没有答案