It seems that an abstract class means the definition of the class is not complete and hence cannot be instantiated.
And I saw some simple Java code which has an abstract
If a Java class is declared abstract yet has all of its methods declared, then they are doing it so it cannot be instantiated, though it may be subclassed.
"Abstract classes cannot be instantiated, but they can be subclassed." See here: https://docs.oracle.com/javase/tutorial/java/IandI/abstract.html