java继承的格式

java当中继承(extends)的格式:

在继承的关系当中“子类就是一个父类”,也就是说子类也可以当做父类看待,例如,父类是员工,子类就是讲师继承了父类员工的本能给老板干活,领工资

定义子类的格式:

                            public class  子类名称 extends 父类名称

                                    父类不用写extends

定义父类的格式:

                                  public class   父类名称

        子类可以继承父类中的方法,也就是子类可以调用父类中的方法,因为有继承关系吗,但是父类没办法调用子类当中的方法,而且一个子类只能有一个父类,就像人只有一个爹一样,但是子类可以继承父类继承的父类当中的方法也就是爷爷类,当我们用别的类创建一个父类对象并且调用的时候我们会发现,调用父类的时候父类里面没有子类的方法,但是当我们创建子类的对象的时候,却可以发现子类继承的那个父类中的方法我们就可以调用。总之,使用父类的东西,发现不了子类中的东西

        创建子类对象的时候:

         子类可以拥有从父类那继承下的东西

继承中成员变量的访问特点

方法,变量重名的情况:

        在父类子类继承关系中成员变量重名的情况下,则创建子类对象的时候有两种方法:

            1.直接通过子类对象访问成员变量:

                等号左边是谁就优先用谁,没有则向上找    

                    ZI zi=new ZI();

                System.out.println(zi.num)//则是用的子类方法中的num变量不是父亲中的,如果子类没有那么则向上继续找,如果左边是父类那么就优先用父类中的num变量,如果都没有那就代表这个变量就是瞎掰的


瞎掰的变量就是报错咯

             2.间接通过成员方法访问成员变量

                    比如调用了子类的方法,那么子类方法中的变量肯定是子类自己的,如果调用的是父类的方法,那么父类方法的变量肯定是他自己的,因为父类没有子类的东西,所以调用父类,肯定是父类当中的变量啊,使用父类的如果没有是不会向下去找子类的

                简单点就是,方法属于谁就优先用谁,没有则向上找:

                        

你可能感兴趣的:(java继承的格式)