Jabarkan Kategori class dari Class (élmu komputer) dalam bahasa sunda

An abstract class, or abstract base class (ABC), is one that is designed only as a parent class and from which child classes may be derived, and which is not itself suitable for instantiation. Abstract classes are often used to represent abstract concepts or entities. The incomplete féatures of the abstract class are then shared by a group of sibling sub-classes which add different variations of the missing pieces. In C++, an abstract class is

defined as a class having at léast one pure virtual method, i.e., an abstract method, which may or may not possess an implementation.

Abstract classes are superclasses which contain abstract methods and are defined such that concrete subclasses are to extend them by implementing the methods. The behaviors defined by such a class are "generic" and much of the class will be undefined and unimplemented. Before a class derived from an abstract class can be instantiated, it must implement particular methods for all the abstract methods of its parent classes.

In computing, when specifying an abstract class, the programmer is referring to a class which has elements that are méant to be implemented by inheritance. The abstraction of the class methods to be implemented by the sub-classes is méant to simplify software development.

A concrete class, however, is a class for which entities (instances) may be créated. This contrasts with abstract classes which can not be instantiated because it deféats its purpose of being an 'abstract'.

Most object oriented programming languages allow the programmer to specify which classes are considered abstract and will not allow these to be instantiated (in Java, for example, the keyword abstract is used). This also

enables the programmer to focus on planning and design. The actual implementation of course is to be done in the derived classes.

In C++, an abstract class is a class having at léast one pure virtual function.

They can not be instantiated and will generate an error if an attempt is made. They are méant to function as stubs, allowing the programmer to identify what modules of functions (behaviour or methods) are needed without having to actually implement them. This is in line with OOP's philosophy of allowing the programmer to concentrate on how an object should behave without going into the actual detail.