Your question:
Can I instantiate other classes inside a class?
Well, theoretically and technically, you can easily get a yes answer. But the real answer is no. Because if you do this:
- , (
Car) , (Engine, Wheels, FuelTank). , , . - , , . -... "" - .
, "" . , : , .
, : , . , . . (DI). - - . , , . , . - , : - .
, : Engine CarPart. , , . Wheels FuelTank. , -:
class Engine {...}
class Wheels {...}
class FuelTank {...}
class CarEngine extends Engine {...}
class CarWheels extends Wheels {...}
class CarFuelTank extends FuelTank {...}
, :
class Car{
Car(instance of CarEngine, instance of CarWheels, instance of CarFuelTank){
}
}
, , :
class Car {
Car(instance of Engine, instance of Wheels, instance of FuelTank){
}
}
, :
!
1:
@Ryan The Leach / factory. .
. ? : factory. factory.
factory - , : ( ?). , . , factory , , , " ()".
, factory / / . factory: factory, factory factory. .
, , factory:
, () -, :
P.S:
... :-) , , ? , , . : : . Nota bene: , "Head First Design Patterns".