A class is a label for a group of common attributes of an object. Some examples would be "Users" or "Computers" objects. That is their class, and username/name or computername/MAC are examples of the attributes. They all contain the same possible attributes and that is their class.
Now that you have the basic idea of what a class is, it is simple to see what the types entail.
ABSTRACT - These are template classes that exist solely to have other classes created from it. They would have attributes that all the classes created from would also have. An example would be "name" or "location". Everything would have a name to be associated with an a set location if not at least the location of origin. These don't contain any objects.
STRUCTURAL - These classes are derived from abstract classes or other structural classes and contain the basic attributes from their abstract classes. As used above, there is the "Users" class in Active Directory. These would contain the "name" and "location" attributes. However, the uncommon attributes for the "Computer" class would be "MAC address" or "SwitchPort" as an example. From there, you could create another class from the "Computer" class that would be perhaps "LAPTOP" and would include additional location and security attributes that are specific to laptops.
As for the instantiated, that IMO would be creating an object such as say Joe Smith User. Now you cannot create an object from an abstract. Only from a structural, which would inherit attributes from an abstract.
This is more so from studying various Active Directory things, and no real world experience

. Maybe someday...
That does mean I could be off the mark on this, and hopefully someone corrects me.