Test 2 Flashcards
represent real-world things, are described by attributes and can carry out behavior (operations, usually called methods).
Software objects
enable objects to communicate and collaborate to accomplish some task
Messages
reclaims the space used by objects when they are no longer needed by the program that created them.
Garbage collection
enable us to group similar objects and share the definition of elements between related objects, so that we don’t have to repeat ourselves.
Classes
results in faster and simpler development, more robust code and easier maintenance.
Reusing code
A tool for code sharing and high-level modeling.
Inheritance
Classes can be grouped into more general concepts and class can get some of its characteristics from a parent class
Inheritence
Class that has at least one method without code
Abstract
Class that all the methods contains lines of code.
Concrete
stop us misusing values by forcing us to declare how we intend to use a value.
Type systems
enables a variable to hold different types of value and a message to be associated with more than one method. The specific type of value or method applicable in any case is determined at run time.
Polymorphism
the compiler can automatically convert between types of variable:
the programmer must specify that an object is to be considered as a different type:
implicit casting
explicit casting
a generic class uses parameters to refer to the types of objects that it expects to deal with.
Templates in Java
requirements, analysis , system design, subsystem design, specification, implementation, testing, deployment and main tenance and how they can be used in a combination of spiral, iterative and incremental methodologies.
The classical phases of software production
describes how we construct a system:
describes how the system should behave when it’s running:
Static modeling
dynamic modeling