Не звучать как коан, а просто интересно, существуют ли определенные правила о классах и объектах. Раньше я рассматривал классы как чертежи, а объекты - как создание из них. Но если комбинация чертежей создает еще один проект, станет ли этот последний проект также объектом?OOP - Если класс создает экземпляр класса, экземпляр также становится объектом?
ответ
Ваш вопрос кажется немного философским ... :) «объект» и «экземпляр» довольно синонимичны в ООП.
Если я правильно понял ваш вопрос, ваше сомнение в том, что: «Объект по-прежнему является объектом, если он создан другим классом, который не совпадает с его типом?»
Ответ «да», экземпляр является объектом, созданным после «модели» определяется его классом, но по многим причинам вы могли бы создать экземпляр класса, косвенным образом, например, статический метод (фабричный метод фабричного класса, например), а не напрямую с использованием инструкции new
.
Если вы хотите увидеть некоторые приходят, простой пример в Java может быть:
public class MyClass {
public MyClass(){}
}
public class MyClassFactory{
public getInstance(){
return new MyClass();
}
}
В этом случае экземпляр не возвращается непосредственно MyClass
, но от заводского класса. однако это тоже объект ...
Как раз в каждой среде OO, которую я знаю, экземпляр такой же как объект.
Не имеет значения, создан ли объект/экземпляр клиентом (например, с new
) или классом (например, с одиночками или фабриками).
Если вы говорите о чертежах в контексте классов, то создание чертежей из чертежей является наследованием, а не инстанцированием.
, так что если комбинация классов создает новый класс, это будет наследование, а не объект? –
@ Demetriius, да, это основная идея. – paxdiablo
- 1. Какой класс создает экземпляр класса фабрики?
- 2. Ruby динамически создает экземпляр класса
- 3. OOP - Форма содержит экземпляр класса экземпляра класса или класса?
- 4. Unit тестирование экземпляр класса становится нулевой
- 5. Как PHP создает экземпляр этого класса?
- 6. ruby on rails Класс контроллера создает экземпляр класса ruby?
- 7. Проверить класс или экземпляр класса
- 8. Pass экземпляр класса в класс
- 9. Почему этот класс создает экземпляр собственного объекта внутри самого класса?
- 10. Создает ли экземпляр дочернего класса его суперкласс?
- 11. PHP Мембранное расширение OOP-экземпляр
- 12. Расширенный класс EditText не создает экземпляр
- 13. экземпляр класса объекта
- 14. Как удалить экземпляр класса?
- 15. Метод класса, который создает новый экземпляр
- 16. Grails создает экземпляр внутреннего класса обслуживания
- 17. Multiple экземпляр пользовательского класса
- 18. Определить метод внутри класса, который создает экземпляр класса
- 19. Создать экземпляр класса внутри класса
- 20. Verilog создает экземпляр проблемы?
- 21. Ruby + Rspec + OOP: Удваивает/заглушает объекты, используемые классом, или создает экземпляр класса?
- 22. Получить экземпляр дочернего класса
- 23. Croppic не создает экземпляр
- 24. новый экземпляр класса
- 25. Salesforce: обнаружить, если экземпляр класса выполняется
- 26. создать экземпляр класса менеджера
- 27. Какао: что создает экземпляр класса контроллера, связанного с файлом NIB?
- 28. Получить экземпляр класса ClassFile
- 29. Найти внешний класс, если предоставлен экземпляр внутреннего класса
- 30. Экземпляр класса
Ваш вопрос очень расплывчатый. Что это за язык? Вы говорите о том, что «комбинация чертежей создает еще один проект», что означало бы класс, создающий новый класс, а не экземпляр класса, который не является универсальным на всех языках. – lanzz
Может быть, я не понимаю вопроса ... Если есть экземпляр, то этот экземпляр является объектом. Неважно, что его создало. Все, что было создано в куче, является экземпляром и является объектом. – David
Не зависит от языка. Просто ООП вообще. –