Object Oriented Software Engineering   View all facts   Glossary   Help
subject > programming language construct > class > abstract class
Next classaggregate    Upclass    Previous classview   

abstract class
subjectfact 
abstract classcan have concrete methods or instance variableslink: chapter2section2.8.html#946, 2001-08-30 14:54:24.0
cannot have instances2001-08-30 14:54:24.0
has definition A class that cannot have any instances2001-08-30 14:54:24.0
has purpose to hold features that will be inherited by two or more subclasses2001-08-30 14:54:24.0
has part abstract method2001-08-30 14:54:24.0
is a subtopic of The Basics of Java2001-08-30 14:54:24.0
is a kind of class2001-08-30 14:54:24.0
classcontains all of the code that relates to its objects including
  • code describing how the objects of the class are structured - i.e. the data stored in each object that implement the properties
  • The procedures, called methods, that implement the behaviour of the objects
2001-08-30 14:54:50.0
contains data associated with each object2001-08-30 14:54:50.0
declares a list of variables, called instance variables, corresponding to data that will be present in each instance2001-08-30 14:54:50.0
is an abstract representation of all the instances of that class that may ever exist2001-08-30 14:54:51.0
is probably useless if it has no responsibilities attached to it2001-08-30 14:54:51.0
is the unit of data abstraction in an object-oriented program2001-08-30 14:54:51.0
is divided up into methods2001-08-30 14:54:51.0
is drawn as a box with the name of the class inside in a UML class diagram2001-08-30 14:54:51.0
is needed in a domain model if you have to store or manipulate instances of it in order to implement a requirement2001-08-30 14:54:51.0
represents several similar objects2001-08-30 14:54:51.0
see also class^22001-08-30 14:54:51.0
should be created to hold a responsibility if the responsibility cannot be attributed to any of the existing classes2001-08-30 14:54:51.0
should be named after things their instances represent in the real world2001-08-30 14:54:51.0
should not be named after the internals of a computer system such as 'Record', 'Table', 'Data', 'Structure', or 'Information'2001-08-30 14:54:51.0
data abstractiongroups the pieces of data that describe some entity, so that programmers can manipulate that data as a unit2001-08-30 14:55:09.0
helps a programmer to cope with the complexity of data2001-08-30 14:55:09.0
hides the details of data2001-08-30 14:55:09.0

Kinds of abstract class :

Next classaggregate    Upclass    Previous classview