Вопрос в том, как создаются частные поля?
Означает ли это, что когда у меня есть два экземпляра компьютера, они не должны делиться этими составными объектами ...
Да.
Если объект Computer
создает свой собственный Processor
, так что никакой другой объект не имеет ссылки на этот экземпляр Processor
, тогда он "владеет" своим Processor
, что в кавычке называется агрегация .
Сравните этот сценарий с объектом Computer
, который получает свой Processor
через метод метода получения или аргумент конструктора. В этом случае экземпляр Processor
создается другим объектом, а Computer
не имеет единоличного владения своим Processor
, поскольку не имеет единственной ссылки на объект Processor
. Цитата относится к этой взаимосвязи как состав .
На практике разница между агрегацией и составом редко имеет значение. Разница между составом и наследованием гораздо важнее.