类作为成员变量类型

Weapon :

 1 public class Weapon {
 2 
 3     private String code; // 武器的代号
 4 
 5     public Weapon() {
 6     }
 7 
 8     public Weapon(String code) {
 9         this.code = code;
10     }
11 
12     public String getCode() {
13         return code;
14     }
15 
16     public void setCode(String code) {
17         this.code = code;
18     }
19 }

Hero :

 1 // 游戏当中的英雄角色类
 2 public class Hero {
 3 
 4     private String name; // 英雄的名字
 5     private int age; // 英雄的年龄
 6     private Weapon weapon; // 英雄的武器
 7 
 8     public Hero() {
 9     }
10 
11     public Hero(String name, int age, Weapon weapon) {
12         this.name = name;
13         this.age = age;
14         this.weapon = weapon;
15     }
16 
17     public void attack() {
18         System.out.println("年龄为" + age + "的" + name + "用" + weapon.getCode() + "攻击敌方。");
19     }
20 
21     public String getName() {
22         return name;
23     }
24 
25     public void setName(String name) {
26         this.name = name;
27     }
28 
29     public int getAge() {
30         return age;
31     }
32 
33     public void setAge(int age) {
34         this.age = age;
35     }
36 
37     public Weapon getWeapon() {
38         return weapon;
39     }
40 
41     public void setWeapon(Weapon weapon) {
42         this.weapon = weapon;
43     }
44 }

DemoMain :

 1 public class DemoMain {
 2 
 3     public static void main(String[] args) {
 4         // 创建一个英雄角色
 5         Hero hero = new Hero();
 6         // 为英雄起一个名字,并且设置年龄
 7         hero.setName("盖伦");
 8         hero.setAge(20);
 9 
10         // 创建一个武器对象
11         Weapon weapon = new Weapon("AK-47");
12         // 为英雄配备武器
13         hero.setWeapon(weapon);
14 
15         // 年龄为20的盖伦用多兰剑攻击敌方。
16         hero.attack();
17     }
18 
19 }

 

posted @ 2020-12-14 10:41  Oooooooa  阅读(121)  评论(0)    收藏  举报