Object Oriented Software Engineering   View all facts   Glossary   Help | 
| subject > component > module > Java module > Java class > stream class > filter > object stream class > ObjectInputStream | 
| ObjectInputStream | ||||
| subject | fact | |||
| ObjectInputStream | contains Java objects | ![]()  | 
| is a subtopic of 3.5 - Technology Needed to Build Client-Server Systems | ![]()  | |
| is an instance of object stream class | ![]()  | |
| uses serialization | ![]()  | |
| object stream class | has example //creation output = new ObjectOutputStream(clientSocket.getOutputStream()); //sending an object output.writeObject(msg); //receiving an object (in a loop) msg = input.readObject();  | ![]()  | 
| is wrapped around a binary stream | ![]()  | |
| filter | converts raw bytes of a message into other forms | ![]()  | 
| Java class | can extend only one superclass | ![]()  | 
| can have more than one constructor each of which has different sets of arguments | ![]()  | |
| can have the same name as another class if the two classes are not in the same package and their packages are never imported into the same file | ![]()  | |
| can implement more than one interface | ![]()  | |
has form class classname  | ![]()  | |
| is abstract if it has one or more abstract methods | ![]()  | |
| is stored in a file of the same name | ![]()  | |
| may implement particular low-level subsystems | ![]()  | |
| should be placed in its own source file | ![]()  | |
| should have a unique name since somebody in the future might want to import the packages containing both classes and hence create a name clash | ![]()  | |
| should order elements as follows: | ![]()  | |
| class | declares a list of variables, called instance variables, corresponding to data that will be present in each instance | ![]()  | 
| has part class name | ![]()  | |
| has part class variable | ![]()  | |
| has part code | ![]()  | |
| has part constructor | ![]()  | |
| has part instance variable | ![]()  | |
| has part method | ![]()  | |
| has part variables | ![]()  | |
| is divided up into methods | ![]()  | |
| is drawn as a box with the name of the class inside in a UML class diagram | ![]()  | |
| is needed in a domain model if you have to store or manipulate instances of it in order to implement a requirement | ![]()  | |
| represents several similar objects | ![]()  | |
| see also class^2 | ![]()  | |
| should be created to hold a responsibility if the responsibility cannot be attributed to any of the existing classes | ![]()  | |
| should be named after things their instances represent in the real world | ![]()  | |
| should not be named after the internals of a computer system such as 'Record', 'Table', 'Data', 'Structure', or 'Information' | ![]()  | |
| data abstraction | groups the pieces of data that describe some entity, so that programmers can manipulate that data as a unit | ![]()  | 
| helps a programmer to cope with the complexity of data | ![]()  | |
| hides the details of data | ![]()  | |
| module | has high cohesion if related aspects of a system are kept together in this module, and unrelated aspects are kept out | ![]()  | 
| lacks 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 | ![]()  | |
| component | may perform a special-purpose function such as the user interface for a particular system | ![]()  | 
Next object stream class: ObjectOutputStream     Up: object stream class