subclass | bold = mandatory italic = non-terminal normal font = optional | 0 or more methods to the methods it inherits from its superclass | 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 | Classes | the internals of a computer system such as 'Record', 'Table', 'Data', 'Structure', or 'Information' | overridden methods using the keyword super | | only one superclass | implementation for all its instance methods unless the class is abstract | the extends keyword | its own source file | several similar objects | none, some or all of its state from all its ancestors | data associated with each object | | public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } } | create an instance of it | more than one interface | 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
| descendent | Object class | until its direct superclass has been defined | 1 class definition | | an inherited member variable by declaring a member variable with the same name | public class Movie extends Attraction | any member that is inherited | any method that is declared final in the 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 | a unique name since somebody in the future might want to import the packages containing both classes and hence create a name clash | constructor | A class that is an extension of another class, and hence inherits from the other class | the unit of data abstraction in an object-oriented program |