# JavaThreadDemo **Repository Path**: mclonline/java-thread-demo ## Basic Information - **Project Name**: JavaThreadDemo - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-12-29 - **Last Updated**: 2021-12-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JavaThreadDemo ``` /* 题目:实现Player和PlayerManager接口的功能。 要求: 1、Player对象以username为索引,且Player对象创建之后,username不会变化。 2、PlayerManager中的所有功能是线程安全的,可并发执行。 3、PlayerManager每隔一分钟会将isOffline() == true的Player对象删除。 4、编写针对PlayerManager功能的单元测试,确保PlayerManager的功能正确。 */ public interface Player { /** * 用户名。 */ String getUsername(); /** * 向玩家发送消息。 */ void write(String message); /** * 玩家是否掉线。 */ boolean isOffline(); } public interface PlayerManager { /** * 增加一个玩家对象。 */ void addPlayer(Player player); /** * 根据用户名获取玩家对象。 */ Player getPlayer(String username); /** * 向系统中的所有玩家广播一条消息。 */ void broadcast(String message); } ```