2018/01/08JAVA 基础 / 接口与继承:调用父类/子类的类方法、对象方法,访问父类的类属性、对象属性的方式汇总
1)父类
Ⅰ.访问父类的类属性的方式:
①在子类/父类的主方法中直接用父类.类属性访问,诸如System.out.println(Hero.armor);形式
②在子类/父类主方法中用父类类型对象/引用.类属性形式访问,如Hero h = null;System.out.println(h.armor);即便是Hero h = new ADHero();形式也能用对象.类属性调用父类的类属性。理由:因为类属性只和的引用类型有关。
Ⅱ. 访问父类的对象属性的方式:
①引用.对象属性。在子类/父类的主方法中用指向父类对象的引用访问父类对象属性。诸如Hero hh = new Hero();System.out.println(hh.name);
②用关键词super访问:子类在继承父类属性后可以重写该属性值,然后在子类中设计一个方法A,并在该A方法体内通过super.对象属性名访问父类的对象属性值。例如super.moveSpeed;其中moveSPeed属性在子类中重新赋值了。
Ⅲ.调用父类的类方法的方式:
①用类.类方法调用:在子类/父类的主方法中使用这种方式。如Hero.physic();Hero为父类类名,physic()为父类的类方法。
②用对象.类方法调用:在子类/父类的主方法中使用诸如Hero h = new Hero();h.physic()调用父类的类方法,即便是Hero h = new ADHero();形式也能用对象.类方法调用父类的类方法。理由:因为类方法只和的引用的类型有关。链接
Ⅳ.调用父类的对象方法的方式:
①用引用调用:在子类/父类的主方法中,若引用的类型为父类类型,且引用指向的对象类型也是父类类型,那么引用调用的就是父类的对象方法。诸如Hero h = new Hero();h.useItem;其中useItem()为父类的对象方法。
②用关键词super调用:子类继承并重写父类方法A后,在子类的方法A中用super.方法名(参数名)调用父类方法。方法名为父类方法的对象方法名,参数名为父类方法的参数名。如super.useItem(i);其中useItem()是父类的对象方法。
2)子类:
举例说明
Ⅰ .调用子类的类方法的方式:
①类.类方法:在子类/父类的主方法中使用子类类名调用子类的静态方法。诸如以下子类的代码“”
1 public class ADHero extends Hero implements AD{
2 public static void greeto(){
3 System.out.println("this's your shirt!");
4 }
5 public static void main(String[] args) {
6
7 ADHero.greeto();
8
9 }
10 }
②对象.类方法:在子类/父类的主方法中使用子类类型引用调用子类的静态方法。诸如以下子类的代码
1 public static void main(String[] args) {
2
3 ADHero hh = new ADHero();
4 hh.greeto();
5
6 }
同理,也可以这样:
ADHero hh = null; hh.greeto();
因为:类方法只和引用的类型有关。
子类和父类相似,其调用/访问方式就不再进一步叙述。