| Number class | bold = mandatory italic = non-terminal normal font = optional  | 0 or more methods to the methods it inherits from its superclass | abstract class | a list of variables, called instance variables, corresponding to data that will be present in each instance | its members from access by other classes or objects using an access modifier | Example Classes | specifying the abstract keyword on the first line when you declare the class | the internals of a computer system such as 'Record', 'Table', 'Data', 'Structure', or 'Information' | any public class in other packages |  | only one superclass | 0 or more method declarations for all methods needed to implement its programming interface to its subclasses | its own source file | several similar objects | behaviour from its superclass | data associated with each object | to hold features that will be inherited by two or more subclasses |   | some or all of the implementation of its methods | concrete class | public class HelloWorld {    public static void main(String[] args) {       System.out.println("Hello World!");    } } | create an instance of it | more than one interface | have any abstract methods | a package | elements as follows: - class variables
 - instance variables
 - constructors
 - the most important public methods
 - methods that are simply used to access variables
 - private methods
 
  | Object class | generic behaviour | 1 class definition |  | an implements clause to declare that it contains methods for each of the operations specified by the interface | methods that are inherited from the class's superclass | class classname {  // declarations of variables    // declarations of constructors     // declarations of other methods with public ones first }  |  | 1 named package rather than the default package | fully defined | specification | constructor | final |