Java abstract class | a domain model if you have to store or manipulate instances of it in order to implement a requirement | side effects if it does not modify any data, and does not leave behind any information, other than its result, that would have an effect on other computations | one or more abstract methods | abstract if it has one or more abstract methods | Java class | in a file of the same name | The Basics of Java | particular low-level subsystems | the pieces of data that describe some entity, so that programmers can manipulate that data as a unit | the details of data | to hold a responsibility if the responsibility cannot be attributed to any of the existing classes | to hold features that will be inherited by two or more subclasses | class classname { // declarations of variables // declarations of constructors (discussed below) // declarations of other methods with public ones first } | a special-purpose function such as the user interface for a particular system | its own source file | abstract method | methods | an implements clause to declare that it contains methods for each of the operations specified by the interface | a programmer to cope with the complexity of data | elements as follows: - class variables
- instance variables
- constructors
- the most important public methods
- methods that are simply used to access variables
- private methods
| the internals of a computer system such as 'Record', 'Table', 'Data', 'Structure', or 'Information' | several similar objects | only one superclass | a list of variables, called instance variables, corresponding to data that will be present in each instance | a box with the name of the class inside in a UML class diagram | data associated with each object | if related aspects of a system are kept together in this module, and unrelated aspects are kept out | specifying the abstract keyword on the first line when you declare the class | class^2 |