Every instance of a class (except an abstract class) is an object?
Yes. That's the definition of "instance.
Abstract classes cannot be instantiated, hence they are not objects?
Classes are not the same as instances or objects. An object is an instance of a class. Imagine a zoo simulation. An object is like a specific lion, whereas a class is more like a description of what a lion is. Abstract classes are descriptions of things that are too vague to make it reasonable to build something based on that description alone (e.g. "Animal"). That's why you can't instantiate them. Something like an Animal might be too vague for the program to request directly; instead, the program will only request more specific things like Lion, Tiger, or Mongoose.