A Class describes an Object COBOL Class object and its instance objects. It contains nested programs for class methods and instance methods. 
 
  General Format
 
	  
	  
 
  Syntax Rules
 
	   
	 - The words PROTECTED and RESTRICTED are equivalent. 
	 
- If the EXTERNAL clause is specified, neither the DATA nor the INHERITS clause may be specified. 
	 
- If the ABSTRACT clause is specified, the FINAL clause must not be specified. 
	 
- If the WITH DATA phrase is specified in the INHERITS clause, the DATA IS PRIVATE clause must not be specified explicitly or implicitly in the source code for class-name-2. 
	 
- Class-name-2 must not be the same as class-name-1. 
	 
- Class-name-2 must not inherit from class-name-1 directly or indirectly. 
	 
- Class-name-1 in the END CLASS header must be identical to the class-name-1 specified in the preceding Class-ID paragraph. 
	 
General Rules
 
	   
	 - Class-name-1 identifies the class being declared. 
	 
- The ABSTRACT clause indicates that class-name-1 is an abstract class. You cannot create an instance of an abstract class. 
	 
- The EXTERNAL phrase indicates that class-name-1 is an external class. No code is produced. 
	 
- The RESTRICTED phrase enables subclasses to directly access data inherited from class-name-1. 
	 
- The PRIVATE phrase prevents subclasses from directly accessing data inherited from class-name-1. 
	 
- The INHERITS phrase specifies that class-name-2 is a parent class of class-name-1. 
	 
- If the INHERITS phrase is not specified, class-name-1 forms a new root in the classification scheme. There can be one or more roots in a classification scheme. 
	 
- The WITH DATA phrase specifies that class-name-1 is able to access directly data inherited from class-name-2.