7.11 实战练习

1.编写一个Person类,Person类中包含一个PersonEmotion类型的实例变量emotion,PersonEmotion类是Person类中定义的一个内部类。同时,Person类还包含两个方法happy()和sad(),分别打印XXX happy和XXX sad(XXX为该Person的name)。PersonEmotion类有一个私有的实例变量:boolean happy,代表情绪类型,如果为true,则代表高兴,否则就是不高兴;PersonEmotion类中为这一实例变量提供公共的访问方法,每次在改变happy的值时都要去调用外部类中相应的happy()或sad()方法。在Person类的外部生成若干个Person对象,并设计程序验证以上的代码。

2.定义一个接口Weapon,声明一个方法shoot();定义一个类Army,该类有一个静态方法attack(Weapon w),要求传一个Weapon对象作为参数,表示让这个Weapon对象发射。在main方法中调用attack方法,使用匿名内部类对象作为参数。