No, an abstract class does not have a constructor because it is never instantiated (made into an object). There is nothing to "construct."
The abstract class just provides default methods and variables for any subclass to inherit. Nothing happens to the abstract class when a subclass is instantiated, you just automatically have all the methods* and variables* when you extend the abstract class. It also can be used to require a subclass to override (or re-define) certain methods.
*depending on their access modifiers like private or public
When a new BasketBall object is created the JVM calls its constructor, but doesn't complete. Before it does BasketBall's super type constructor is called and if that object has a super type then its constructor is called before that completes, otherwise BasketBall's super type constructor completes and then BasketBall's constructor completes. All objects in java are created this way.