计算机程序中经常使用类之间的继承关系来表示对象之间的关系。在继承关系中,有一种关系叫:父类与子类。使用继承一方面可以重复使用代码,减少代码量:公共属性放在父类里,子类只需要添加自己的特殊属性和功能;另一方面,不同的子类对象可以更方便的被统一处理。
而在继承中,如果父类的成员变量是私有(private)的,则子类不能直接访问该成员变量。此时,要么在父类中定义公有的调用该成员变量的方法,然后子类调用该公有方法,要么借由super关键字来实现。
1、super关键字可用于代指父类,可借由它调用父类的构造方法以及访问父类的成员和变量。
2、在子类的构造方法中,super(sum)表示调用父类的含sum参数的构造方法。需要注意的是,在调用父类的构造方法时,super必须放在第一行。
3、在子类中,可借由super.setsum()来访问父类的setsum()方法。注意不可用super(setsum())的方式来调用。
4、super和this是不同的,super只是一个关键字,用于指示编译器来访问父类对应的变量和方法,并不能作为参数和返回值。而this是真实存在的,可以作为参数和返回值。