重捡Java(五)类与对象 继承

2020-05-05  本文已影响0人  我很惊讶

非常重要的一个原理,也是Java面向对象编程的一个非常重要特性。
比如英雄联盟中的物品,都有名称和价格,这就是他们的共性,可以写一个物品类,而物品类下,比如武器,还有攻击力和攻击特效,而防具是血量和护甲。那我们可以分成两个类,一个武器类一个防具类。这两个类都继承物品这个父类,所以他们就不需要单独再写名称价格这两个属性了,只需要加入自己的特别属性就可以了。

举例
物品类

public class Item {
    String name;
    int price;
}

不使用继承的武器类,除了需要原有属性以外还需要加入自己的属性

public class Weapon{
    String name;
    int price;
    int damage; //攻击力
 
}

使用继承的武器类,虽然只加入了攻击力这一条属性,但是父类Item的属性子类Weapon是都可以访问到的。

public class Weapon extends Item{
    int damage; //攻击力
}

可以写个主函数验证一下

 public static void main(String[] args) {
        Weapon infinityEdge = new Weapon();
        infinityEdge.damage = 65; //damage属性在类Weapon中新设计的
         
        infinityEdge.name = "无尽之刃";//name属性,是从Item中继承来的,就不需要重复设计了
        infinityEdge.price = 3600;
         
    }

注:继承还有其他一些知识,这里先以类和对象为视角涉及一下

上一篇 下一篇

猜你喜欢

热点阅读