我有一个类,其中包含已连接客户端的列表,其用户名为密钥,客户端实例为值。到目前为止,该课程看起来像这样:
public class ClientList {
private static HashMap<String, Client> clients = new HashMap<>();
/**
* Add a client to the list of connected clients
*
* @param username Unique client key
* @param client The client to add to the list
*/
public static void add(String username, Client client) {
clients.put(username, client);
}
/**
* Remove a client from the list
*
* @param username the client to remove
*/
public static void remove(String username) {
clients.remove(username);
}
/**
* Get the client in the list that has the given username
*
* @param username The username of the client to return
* @return The client with a matching username
*/
public static Client getClient(String username) {
return clients.get(username);
}
/**
* @return The client list
*/
public static HashMap<String, Client> getList() {
return clients;
}
}
然而,在复习课程后,我意识到所有这些方法都只是将params传递给HashMap
类,这意味着ClientList
类不会给程序带来任何新东西。既然如此,我知道我可以在某处创建静态HashMap<String, Client>
并使用它而无需为它创建一个全新的类;我的问题是我没有任何合适的类来存储列表,例如我的ClientListener
类访问列表我不想静态访问具有不相关名称的类,例如{ {1}}。所以我的问题是,处理这张地图的最佳方法是保持适当的可读性吗?