Hi there, well your approach is actually one of the best ways to pass data between classes. One usually does this via the class constructor just as you have in the parking ticket class.
The class that handles the parking tickets would require both objects to achieve its goal. What you're missing is what is usually (I think usually) referred to as a
driver class. This class would be responsible for getting the input from the keyboard and supplying the objects of the appropriate classes with data.
So the design of the parking meter class and parked car class is somewhat incorrect. These classes should only have attributes that store the required information using
get and
set methods. For example,
setMinutesPurchased(int min) and
getMinutesPurchased(). You could also store this information via the class constructor but is it good practise to include the get and set methods.
So once you have the three proper classes whose job is to only store data and process it, then you create the driver class that actually creates the objects from the classes and populates the objects with data from the user (i.e. keyboard). I hope this makes sense?
And if you read the specifications you'll see that my recommendations fit. Oh and btw, please begin class names with a capital letter as per the convention for Java programming. A Java programmer that uses the Java standards is a happy programmer

it just makes it easier for other people to read your code... and possible it will be easier for you to read your code.