I'd do one better than that. Pass it a file handle (glob) instead of the file name. That way, you can have it read from aynthing that's filehandle driven, like a tcp/ip socket. If it's done right, that the class only reads the minimum amount of data FOR a car, you can put multiple cars in one file and initialize multipl objects like that. Or if it makes you happy, mix-and match data in your data stream so that you can read a car, then a person, then a drink, then a cow.. you get my drift.
----
Give me strength for today..
I will not talk it away..
Just for a moment..
It will burn through the clouds..
and shine down on me.