Introduction to Object Reading comprehension:
1. The complexity of solving the problem directly depends on the type and quality of abstraction (abstract type and what is abstract?). )。
Assembly language is a slight abstraction of the underlying machine, while the C, basic, and other instruction-type languages are abstractions of assembly-language, and the main abstractions they do still require solving problems
To be considered based on the structure of the computer, rather than on the structure of the problem to be solved, the Java language, contrary to C, basic, is an abstraction rather than a computation of the problem space.
The underlying implementation of the machine to consider the problem structure.
2. Solution space and problem space
Solution space: corresponding to the machine model, problem modeling place;
Problem space: The actual problem-solving model, where the problem exists, such as a business;
3. Object Description: Object is an abstraction of the real world, such as: a person, a car, object-oriented programming is the modeling of the problem space, and the opposite of the process-oriented programming
The object has a state (attribute), a behavior (method), a flag (an address in memory) ;
4, the class describes the same characteristics (data elements), behavior (function) of the set of objects;
5. The interface determines the requests that can be made to a particular object;
6, each object provides services, the object as a service to improve the cohesion of the object (each object is trying to complete a task, without trying to do more things);
7. Late binding: When an object sends a message, the called code knows that the runtime can confirm it; one of the great benefits of late binding to object-oriented is polymorphism (in contrast to the upfront
binding, which is a weakly typed language).
Java programming thought the first chapter, the object introduction