Возможно ли сохранить ссылку на класс?
Есть класс SomeClass который реализовывает интерфейс SomeInterface
Код:
public interface SomeInterface Код:
List<SomeInterface> siList; Все понятно если создается экземпляр класса SomeClass. Код:
SomeClass sc = new SomeClass(); А что если SomeClass будет использоваться как статический класс, без создания экземпляра. Возможно ли в таком случае сохранить список классов реализовывающих интерфейс SomeInterface для перебора? |
Re: Возможно ли сохранить ссылку на класс?
Нет такого понятия как "статический класс".
Есть паттерн "одиночка". Пример же простой, почему бы не проверить самому? Код: PHP код:
PHP код:
|
Re: Возможно ли сохранить ссылку на класс?
В вашем примере в обоих классах создаются их экземпляры с помощью оператора new.
В моем случае экземпляр класса создаваться не будет. |
Re: Возможно ли сохранить ссылку на класс?
Я могу, конечно, написать решение, но оно того не стоит.
Что за задача такая, где понадобился такой странный подход? |
Re: Возможно ли сохранить ссылку на класс?
Да решил допилить в старой Ц4 сборке более гибкую поддержку скриптов для эвентов.
Я уже сделал с созданием экземпляров каждого класса. Но потом подумал а зачем создавать экземпляры если он используется только в одном месте. Вот стало интересно как реализовать. |
Re: Возможно ли сохранить ссылку на класс?
В таком случае создавайте объект по имени класса, и вызывайте соответствующий метод.
Т.е. руками не надо будет писать new, достаточно указать имена классов в конфиге, или ещё где-то. |
Re: Возможно ли сохранить ссылку на класс?
Да мне не сложно добавить new. Тут вопрос чисто спортивного интереса.
|
Re: Возможно ли сохранить ссылку на класс?
почитайте про рефлекшоны
|
Текущее время: 18:59. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot