A basic question about predicate logic
There is no universal answer. It depends on how you choose to model the universe of discourse you've been assigned to model.
We'd normally expect there to be multiple cars that appear as distinct individuals in the model, and we expect the predicate has to be the relationship that expresses which individual owns which individual object, i.e. between individual persons and individual cars.  In that case, if car is a constant, it must denote a particular car, so you'd need other constants, for instance, car2, car3, etcetera, to denote other cars. It's awkward, but it can be done.
So it is valid, but very impractical. In practice, we usually see a predicate is_car(x), as Yuval Filmus suggests, and a couple of individuals for which that predicate holds that stand for the individual cars that exist in the universe of discourse being modelled.
Tom can be a constant representing a particular person, and we can use other constants such as Dick and Harry to represent other persons. Courses in logic tend to do this because they are proper names and they use sentences such as Tom has a car which imply that there is, indeed, exactly one Tom in the universe of discourse, so you can do this.
Once again: this is valid, and probably what your professor wants you to do, but it is highly impractical.
In practical applications of logic, e.g. when designing a relational database, we can't usually assume that names such as Tom uniquely identify a person, so we model names not as constants, but as predicates.
For instance, we may use a predicate has_first_name(x,y), and the statement Tom has a car can then be expressed as
$\exists! x: \mbox{has_first_name}(x,\mbox{"Tom"}) \\ \wedge \\ \exists x: \mbox{has_first_name}(x,\mbox{"Tom"}) \wedge \exists y: \mbox{is_car}(y) \wedge \mbox{has}(x,y)$
PS: Mars points out a more serious issue with using constants for cars: they always refer to a particular car, and Tom has a car doesn't - you could only express it by a statement that lists every individual car, like this: $\mbox{has}(\mbox{Tom},\mbox{car}) \vee \mbox{has}(\mbox{Tom},\mbox{car2}) \vee \ldots$.