This week's book giveaway is in the OCAJP forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide 1Z0-808 and have Jeanne Boyarsky & Scott Selikoff on-line! See this thread for details.
Yes you can. And if you don't the compiler will provide the invisible default constructor for your abstract class.
The use: Remember, when you extend a class (also true for an abstract class) every constructor in that subclass that does not call another constructor of the same class will call super(); or perhaps super(with_an_argument).
So the use of constructors in abstract classes is just the same as for any concrete class. To perform things that should be done when a new object is created. Easiest example is the initialization of variables with some propper values.