为了讲明白继承和super、this关键字,群主发了20块钱群红包( 二 )

定义成员类/** * 普通成员 * @author zjq */public class Member extends User { public Member() { } public Member(String name, Integer money) { super(name, money); } public void receive(ArrayList<Integer> list) { // 从多个红包当中随便抽取一个,给我自己 。// 随机获取一个集合当中的索引编号 int index = new Random().nextInt(list.size()); // 根据索引,从集合当中删除,并且得到被删除的红包,给我自己 Integer delta = list.remove(index); // 当前成员自己本来有多少钱: Integer money = super.getMoney(); // 加法 , 并且重新设置回去 super.setMoney(money + delta); System.out.println("我是" + this.getName() + " , 我抢到了"+fenToYuan(String.valueOf(delta))+"元红包"+",我现在有多少钱:" + fenToYuan(String.valueOf(this.getMoney()))+"元"); }}定义测试类public class MainRedPacket { public static void main(String[] args) throws Exception { Manager manager = new Manager("群主", 10000); Member member1 = new Member("张三", 1000); Member member2 = new Member("李四", 1000); Member member3 = new Member("王五", 1000); Member member4 = new Member("赵六", 1000); Member member5 = new Member("孙七", 1000); Member member6 = new Member("小詹", 1000); Member member7 = new Member("小明", 1000); Member member8 = new Member("小红", 1000); manager.show(); // 100member1.show(); // 10member2.show(); // 10member3.show(); // 10member4.show(); // 10member5.show(); // 10member6.show(); // 10member7.show(); // 10member8.show(); // 10 System.out.println("============================"); // 群主总共发20块钱,分成8个红包 ArrayList<Integer> redList = manager.send(2000, 8,0); // 八个普通成员收红包member1.receive(redList);member2.receive(redList);member3.receive(redList);member4.receive(redList);member5.receive(redList);member6.receive(redList);member7.receive(redList);member8.receive(redList); }}结果输出如下:

为了讲明白继承和super、this关键字,群主发了20块钱群红包

文章插图
点击关注,第一时间了解华为云新鲜技术~
【为了讲明白继承和super、this关键字,群主发了20块钱群红包】

推荐阅读