Итак, у меня есть несколько классов 'Manager', например GroupManager. Все эти менеджеры - одиночки.
Использование этого метода для создания экземпляров:
private static GroupManager groupManager = null;
private GroupManager()
{
}
public static GroupManager Instance()
{
if (groupManager == null)
{
groupManager = new GroupManager();
}
return groupManager;
}
Думаю, мне следует начать использовать какое-то наследование, поскольку у них много скопированных методов.
Методы Instance () для каждого менеджера одинаковы.
Так что для наследования я могу сделать это (очевидно):
GroupManager extends Manager
Можно ли использовать дженерики для использования одного и того же метода экземпляра для всех менеджеров, например:
public class Manager<E>
{
private static E instance = null;
public static E Instance()
{
if (instance == null)
{
instance = new E();
}
return instance;
}
}
Думаю, в этом есть смысл:)
Итак, вы бы сделали GroupManager.Instance () как обычно.